Позвольте предполагают, что у меня есть список трех пар ключей на моем экране удара, когда я выполняю следующие команды:
gpg2 --list-keys
и
gpg2 --list-secret-keys
Мой вопрос, когда я выполняю следующую команду для проверки файла со знаком, какая пара ключей используется этим инструментом?
gpg2 --verify test.sig
Это проверяет все ключи подписи один за другим, чтобы найти подобранный или закончить все ключи?
Подпись OpenPGP включает ссылку на ключ, используемый для подписания. GnuPG будет использовать этот точный ключ для проверки подписи.
пример для некоторого документа, подписанного моим собственным ключом, проанализированное использование gpg --list-packets
:
:compressed packet: algo=1
:onepass_sig packet: keyid 8E78E44DFB1B55E9
version 3, sigclass 0x00, digest 2, pubkey 1, last=1
:literal data packet:
mode b (62), created 1453746673, name="",
raw data: 4 bytes
:signature packet: algo 1, keyid 8E78E44DFB1B55E9
version 4, created 1453746673, md5len 0, sigclass 0x00
digest algo 2, begin of digest fc 6a
hashed subpkt 2 len 4 (sig created 2016-01-25)
subpkt 16 len 8 (issuer key ID 8E78E44DFB1B55E9)
data: [4095 bits]
8E78E44DFB1B55E9
подраздел подписания, используемый для подписи (, я включил длинные ключевые идентификаторы , в случае, если Вы задаетесь вопросом о 16 символьных шестнадцатеричных идентификаторах).
Для шифрования, возможно скрыть ключ получателя. В этом случае GnuPG должен попробовать все доступные ключи шифрования для дешифрования сообщения.
Дальнейшие ключи могли бы быть включены для проверки подписи, что означает находить доверительные пути в сети доверия: но это - другой, большая тема.