web-dev-qa-db-ja.com

署名鍵でPGP署名を検証する方法

PGP署名と署名鍵(公開鍵)を含むプログラムをダウンロードする必要があります

署名キーでプログラムを確認するにはどうすればよいですか?

6
567hz

GPGがインストールされていると仮定します。

gpg --import signing_key.pub
gpg --verify signed_file.sig

どこ signing_key.pubは公開鍵であり、signed_file.sigは、ファイルの分離された署名です(署名されたファイルと同じディレクトリにあります)。

8
David

.asc PGP署名のみが指定されている場合

.tar.xzを確認する最初の試みは失敗しますが、それでもRSAキー識別子を取得するのに役立ちます。

$ gpg --verify tor-browser-linux64-9.0.4_en-US.tar.xz.asc

gpg: assuming signed data in 'tor-browser-linux64-9.0.4_en-US.tar.xz'
gpg: Signature made Thu 09 Jan 2020 21:09:44 CET
gpg:                using RSA key EB774491D9FF06E2
gpg: Can't check signature: No public key

次に、上記のRSA鍵IDを使用して、欠落している公開鍵を鍵サーバーからインポートします。

$ gpg --keyserver pgpkeys.mit.edu --recv-key EB774491D9FF06E2

gpg: key 4E2C6E8793298290: 70 duplicate signatures removed
gpg: key 4E2C6E8793298290: 21229 signatures not checked due to missing keys
gpg: key 4E2C6E8793298290: 2 signatures reordered
gpg: key 4E2C6E8793298290: public key "Tor Browser Developers (signing key) <[email protected]>" imported
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:   1  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1  valid:   1  signed:   0  trust: 0-, 0q, 0n, 1m, 0f, 0u
gpg: next trustdb check due at 2021-12-08
gpg: Total number processed: 1
gpg:               imported: 1

2回目の検証が成功しました。

$ gpg --verify tor-browser-linux64-9.0.4_en-US.tar.xz.asc

gpg: assuming signed data in 'tor-browser-linux64-9.0.4_en-US.tar.xz'
gpg: Signature made Thu 09 Jan 2020 21:09:44 CET
gpg:                using RSA key EB774491D9FF06E2
gpg: Good signature from "Tor Browser Developers (signing key) <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg:          There is no indication that the signature belongs to the owner.
Primary key fingerprint: EF6E 286D DA85 EA2A 4BA7  DE68 4E2C 6E87 9329 8290
     Subkey fingerprint: 1107 75B5 D101 FB36 BC6C  911B EB77 4491 D9FF 06E2
0