Я недавно мигрировал от одной установки Ubuntu другому, и в процессе изменил мое имя пользователя. Я импортировал свою пару "открытый/закрытый ключ" в gpg, и в то время как дешифрование (использующий мой закрытый ключ) хорошо работает, каждый раз, когда я пытаюсь зашифровать что-то мне с моим открытым ключом, я получаю следующее предупреждающее сообщение:
It is NOT certain that the key belongs to the person named
in the user ID. If you *really* know what you are doing,
you may answer the next question with yes.
После этого это спрашивает меня, хочу ли я действительно использовать ключ (я всегда отвечаю на "да", потому что это - на самом деле единственный ключ в моем брелоке для ключей, и я знаю, куда это прибыло из). Я могу дешифровать материал очень хорошо, итак, почему gpg бросает соответствие hissy каждый раз, когда я пытаюсь зашифровать что-то? И как я могу препятствовать тому, чтобы это сообщение появилось снова?
Вы можете использовать флаг --always-trust
, чтобы пропустить это сообщение.
Я столкнулся с той же проблемой, однако у меня больше не было доступа к старому ключу. Таким образом, вы можете восстановить доверие к своему старому ключу с помощью этого:
gpg --edit-key YOUR@KEY.ID
gpg> trust
Please decide how far you trust this user to correctly verify other users' keys
(by looking at passports, checking fingerprints from different sources, etc.)
1 = I don't know or won't say
2 = I do NOT trust
3 = I trust marginally
4 = I trust fully
5 = I trust ultimately
m = back to the main menu
Your decision? 5
Do you really want to set this key to ultimate trust? (y/N) y
Мне удалось воспроизвести проблему, с которой вы столкнулись. Я сделал это, сделав следующее:
$ gpg --no-default-keyring --keyring ./test-keyring --secret-keyring ./test-secring --trustdb-name ./test-trustdb --no-random-seed-file --gen-key
<specified parameters and let it do its thing>
gpg: key 58018BFE marked as ultimately trusted
public and secret key created and signed.
<snip>
$
Обратите внимание, что процесс помечал ключ как «окончательно доверенный».
Теперь я экспортирую ключи:
$gpg --no-default-keyring --keyring ./test-keyring --secret-keyring ./test-secring --trustdb-name ./test-trustdb --no-random-seed-file --export-secret-keys -a >private.key
$gpg --no-default-keyring --keyring ./test-keyring --secret-keyring ./test-secring --trustdb-name ./test-trustdb --no-random-seed-file --export -a > public.key
Теперь я импортирую в новую базу данных gpg:
$gpg --no-default-keyring --keyring ./test2-keyring --secret-keyring ./test2-secring --trustdb-name ./test2-trustdb --no-random-seed-file --import public.key
$gpg --no-default-keyring --keyring ./test2-keyring --secret-keyring ./test2-secring --trustdb-name ./test2-trustdb --no-random-seed-file --import private.key
Теперь, если я пытаюсь зашифровать, используя новые цепочки ключей, я получаю: [ 119]
$ gpg --no-default-keyring --keyring ./test2-keyring --secret-keyring ./test2-secring --trustdb-name ./test2-trustdb --no-random-seed-file -r Fake -e
gpg: AE3034E1: There is no assurance this key belongs to the named user
pub 1024R/AE3034E1 2013-06-13 Fake User <fake@example.com>
Primary key fingerprint: AD4D BAFB 3960 6F9D 47C1 23BE B2E1 67A6 5801 8BFE
Subkey fingerprint: 58F2 3669 B8BD 1DFC 8B12 096F 5D19 AB91 AE30 34E1
It is NOT certain that the key belongs to the person named
in the user ID. If you *really* know what you are doing,
you may answer the next question with yes.
Причиной этого является модель «паутины доверия». По умолчанию для доверия к открытому ключу требуется либо 1 «окончательный» сертификат доверия (как правило, когда вы лично проверили личность вовлеченных людей), либо 3 «предельных» сертификата доверия (где кто-то, кого вы знаете, кто знает кого-то, кого вы знаете ... подписал сертификат).
Поскольку gpg является приложением безопасности, оно предупреждает вас, если вы пытаетесь зашифровать ключ, который не указан в качестве доверенного. Причина, по которой вашему ключу не доверяют в этом случае, проста. Это потому, что вы не экспортировали доверительные отношения из предыдущего экземпляра gpg. Для этого используйте команды --export-ownertrust и --import-ownertrust.
Как всегда, обратитесь к справочной странице .