Из моего ограниченного знания PGP / GPG, для проверки файла нужно иметь 2 вещи:
«Подпись» файла (по сути, хеш файла, зашифрованного доверенным закрытый ключ организации; обычно распределяется как
.sig
бинарный или.asc
файл base64).Открытый ключ доверенного лица.
И это похоже на примеры, которые я рассмотрел, используя gpg
, Однако я немного запутался, пытаясь проверить файл, загруженный с одного из зеркальных сайтов GCC. На странице со списком зеркал ( http://gcc.gnu.org/mirrors.html ), это говорит:
Архивы (размещенные на этих зеркалах) будут подписаны одним из следующие ключи GnuPG:
И тогда он перечисляет 6 возможных ключей:
1024D/745C015A 1999-11-09 Gerald Pfeifer <gerald@pfeifer.com>
Key fingerprint = B215 C163 3BCA 0477 615F 1B35 A5B3 A004 745C 015A
1024D/B75C61B8 2003-04-10 Mark Mitchell <mark@codesourcery.com>
Key fingerprint = B3C4 2148 A44E 6983 B3E4 CC07 93FA 9B1A B75C 61B8
1024D/902C9419 2004-12-06 Gabriel Dos Reis <gdr@acm.org>
Key fingerprint = 90AA 4704 69D3 965A 87A5 DCB4 94D0 3953 902C 9419
1024D/F71EDF1C 2000-02-13 Joseph Samuel Myers <jsm@polyomino.org.uk>
Key fingerprint = 80F9 8B2E 0DAB 6C82 81BD F541 A7C8 C3B2 F71E DF1C
2048R/FC26A641 2005-09-13 Richard Guenther <richard.guenther@gmail.com>
Key fingerprint = 7F74 F97C 1034 68EE 5D75 0B58 3AB0 0996 FC26 A641
1024D/C3C45C06 2004-04-21 Jakub Jelinek <jakub@redhat.com>
Key fingerprint = 33C2 35A3 4C46 AA3F FB29 3709 A328 C3A2 C3C4 5C06
Все, что он предоставляет, - это идентификаторы ключей и отпечатки пальцев (а не сами ключи), и нигде на странице (или на любом из зеркал, или даже в архиве 4.8.0) нет .sig/.asc
файл подписи.
Мой вопрос: Как я должен проверить этот архив ( http://gcc.petsads.us/releases/gcc-4.8.0/gcc-4.8.0.tar.gz ) без файла подписи и без знания открытого ключа или без знания, какой из 6 ключей мог быть использован для подписи файла? Может кто-то с большим знанием GPG, пожалуйста, объясните самый простой способ проверить этот файл?
Вам нужен файл sig. Единственный другой способ - это если бы сам файл был «.gpg» и имел прикрепленную подпись. Если в сообщении говорится, что «они будут подписаны», а в зеркале нет .sig, то .sigs были удалены из зеркала.
Вы можете проверить подписи с любого из других зеркал, просто получите .sig от одного из них - если .gz не был изменен, подпись все равно будет применяться.
источник