web-dev-qa-db-ja.com

ダウンロードしたファイルを.sigファイルで確認する方法は?

GCCをダウンロードすると、.sigファイルもあり、ダウンロードしたファイルを確認するために提供されていると思います。 (GCCを here からダウンロードしました)。

しかし、私はそれをどのように使用すればよいかわかりません。 gpgを試してみましたが、公開鍵について文句を言います。

[root@localhost src]# gpg --verify gcc-4.7.2.tar.gz.sig gcc-4.7.2.tar.gz
gpg: Signature made Thu 20 Sep 2012 07:30:44 PM KST using DSA key ID C3C45C06
gpg: Can't check signature: No public key
[root@localhost src]# 

ダウンロードしたファイルを.sigファイルで確認するにはどうすればよいですか?

63
Eonil

公開鍵をインポートする必要があります:C3C45C06

3つのステップで実行できます。

1)公開鍵IDを見つける:

$ gpg gcc-4.7.2.tar.gz.sig 
gpg: Signature made Čt 20. září 2012, 12:30:44 CEST using DSA key ID C3C45C06
gpg: Can't check signature: No public key

2)鍵サーバーから公開鍵をインポートします。通常、キーサーバーを選択する必要はありませんが、--keyserver <server>キーサーバーの例

$ gpg --recv-key C3C45C06
gpg: requesting key C3C45C06 from hkp server keys.gnupg.net
gpg: key C3C45C06: public key "Jakub Jelinek <[email protected]>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1

3)署名を検証する:

$ gpg gcc-4.7.2.tar.gz.sig 
gpg: Signature made Čt 20. září 2012, 12:30:44 CEST using DSA key ID C3C45C06
gpg: Good signature from "Jakub Jelinek <[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: 33C2 35A3 4C46 AA3F FB29  3709 A328 C3A2 C3C4 5C06

出力には「Good signature」と表示されるはずです。


gpg:警告:このキーは信頼できる署名で認証されていません!

別の質問です;)

69
A.D.

この別の方法は、GNUプロジェクト(たとえば Octave )を検証するのに特に便利です。なぜなら、署名によって要求されたキーがどのキーサーバーにも見つからない可能性があるからです。

http://ftp.gnu.org/README から

上記のファイルの分離されたGPG署名を含む.sigファイルもあり、それらを生成する同じスクリプトによって自動的に署名されます。

gnuプロジェクトファイルの署名は、次のキーリングファイルで確認できます。

https://ftp.gnu.org/gnu/gnu-keyring.gpg

キーリングファイル、検証するソースファイル、および署名ファイルのあるディレクトリでは、使用するコマンドは次のとおりです。

$ gpg --verify --keyring ./gnu-keyring.gpg foo.tar.xz.sig

18
tay10r

指定されたキーIDの公開キーサーバーを検索する必要があります:あなたの場合ID C3C45C06見つかったキーをローカルキーストアにインポートします。その後、検証は正常に行われます。私はUbuntu 12.04を使用していますが、これにはSeahorseキー管理ソフトウェアが付属しています。キーのインポートの前に私はこれを見ていました:

~/Downloads$ gpg --verify --keyring ./gnu-keyring.gpg icecat-31.5.0.en-US.linux-x86_64.tar.bz2.sig icecat-31.5.0.en-US.linux-x86_64.tar.bz2
gpg: Signature made  9.03.2015 (пн) 22,35,52 EET using RSA key ID D7E04784
gpg: Can't check signature: public key not found

キーのインポート後、私はこれを見ていました:

~/Downloads$ gpg --verify --keyring ./gnu-keyring.gpg icecat-31.5.0.en-US.linux-x86_64.tar.bz2.sig icecat-31.5.0.en-US.linux-x86_64.tar.bz2
gpg: Signature made  9.03.2015 (пн) 22,35,52 EET using RSA key ID D7E04784
gpg: Good signature from "Ruben Rodriguez (GNU IceCat releases key) <[email protected]>"
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: A573 69A8 BABC 2542 B5A0  368C 3C76 EED7 D7E0 4784
0
zloster

これによると http://gcc.gnu.org/mirrors.html それはJakub Jelinekであり有効であるはずです。彼の公開鍵をどこで手に入れるかはわかりません。

0
user1794469