Назад | Перейти на главную страницу

Можно ли использовать открытый ключ GPG для шифрования сообщения без импорта ключа?

Иногда я могу захотеть использовать чей-то ключ gpg для отправки сообщения, но мне больше не понадобится использовать этот ключ снова.

Импорт ключа в этом случае кажется ненужным.

Я искал, но не нашел ничего, свидетельствующего о том, что это возможно. Это немного раздражает, когда приходится каждый раз делать --delete-keys.

GnuPG требует, чтобы все ключи, которые вы хотите использовать, были импортированы в связку ключей.

Если вы не хотите импортировать его в свою обычную связку ключей, используйте другую (временную) связку ключей или даже временный домашний каталог GnuPG (который также будет обходить любую конфигурацию).

Временный брелок

Устанавливать --primary-keyring temporary.gpg использовать (и при необходимости создать) временную связку ключей по умолчанию. Он будет создан в вашем домашнем каталоге GnuPG (~/.gnupg/temporary.gpg по умолчанию). Ваш обычный брелок по-прежнему будет доступен, но импорт будет временным. Удалите как хотите.

Например:

gpg --primary-keyring temporary.gpg --import key.asc
gpg --primary-keyring temporary.gpg --recipient 0xDEADBEEF --encrypt
rm ~/.gnupg/temporary.gpg # can be omitted, not loaded by default

Временный домашний каталог GnuPG

Это также сбросит всю конфигурацию и может быть полезно для тестирования некоторых вещей. Устанавливать --homedir [folder] или переменная среды $GNUPGHOME, импортируйте ключ, выполните любые операции, а затем удалите папку по своему желанию.

Например:

export GNUPGHOME=/tmp/gnupg # Or apply --homedir on each invocation
gpg --import key.asc
gpg --recipient 0xDEADBEEF --encrypt
rm -r $GNUPGHOME # Can be omitted
unset $GNUPGHOME

GnuPG очень разборчив в отношении разрешений, вам может потребоваться применить более строгие разрешения к $GNUPGHOME папку перед выполнением всех операций. Вполне возможно, что у вас будет игровая площадка.$GNUPGHOME вокруг.

Вы можете создать небольшой сценарий оболочки, который копирует ваш файл pubring.gpg, импортирует ключ, шифрует ваш файл, а затем перемещает исходный файл pubring.gpg на место. В следующий раз это превратит его в однострочник.

#!/bin/sh
cp -a ~/.gnupg/pubring.gpg ~/.gnupg/pubring.gpg-backup
gpg ... # Command to import 
gpg ... # Command to encrypt message/file
mv ~/.gnupg/pubring.gpg-backup ~/.gnupg/pubring.gpg

Примечание: параметрами скрипта являются переменные «$ 1», «$ 2», ...