2013-03-11 3 views
41

Wenn ich GCC herunterladen, hat es auch eine .sig Datei, und ich denke, es wird bereitgestellt, um heruntergeladene Datei zu überprüfen. (Ich habe GCC von here heruntergeladen).Wie überprüft man heruntergeladene Datei mit .sig-Datei?

Aber ich kann nicht herausfinden, wie ich es verwenden soll. Ich versuchte gpg, aber es beschwert sich über den öffentlichen Schlüssel.

[[email protected] 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 
[[email protected] src]# 

Wie kann ich heruntergeladene Datei mit .sig Datei überprüfen?

Antwort

10

Diese andere Möglichkeit ist besonders nützlich zum Verifizieren von GNU-Projekten (z.B. Octave), da der von ihrer Signatur angeforderte Schlüssel möglicherweise nicht in irgendeinem Schlüsselserver gefunden wird.

Von http://ftp.gnu.org/README

Es gibt auch .sig-Dateien, die GPG-Signaturen von die oben genannten Dateien abgelöst enthalten, automatisch mit dem gleichen Skript unterzeichnet, dass sie erzeugt.

Sie können die Unterschriften für Gnu Projektdateien überprüfen mit der Schlüsselbund Datei aus:

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

In einem Verzeichnis mit der Schlüsselbund-Datei, die Quelldatei zu überprüfen und die Signaturdatei, der Befehl zur Verwendung ist:

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

+3

Aber wenn wir über Sicherheit sprechen dann ist es besser, HTTPS-Verbindung zu nutzen: [https://ftp.gnu.org/gnu/gnu-keyring.gpg] (https://ftp.gnu.org/gnu/gnu-keyring.gpg) – Maxim

+0

@Maxim guten Ruf! – tay10r

0

Sie müssen die öffentlichen Schlüsselserver nach der angegebenen Schlüssel-ID durchsuchen: in Ihrem Fall ID C3C45C06 Importieren Sie den gefundenen Schlüssel in Ihren lokalen Keystore und danach sollte die Überprüfung in Ordnung sein. Ich benutze Ubuntu 12.04 und es kommt mit Seahorse Key Management Software. Vor dem Schlüsselimport sah ich dies:

~/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 

Nach dem Schlüssel-Import ich dies sah:

~/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 
51

Sie müssen die öffentlichen Schlüssel importieren: C3C45C06

Kann in drei Schritten erfolgen .

1) finden öffentliche Schlüssel-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) den öffentlichen Schlüssel vom Schlüsselserver importieren. Es wird normalerweise nicht benötigt, um den Schlüsselserver zu wählen, aber es kann mit --keyserver <server> gemacht werden.Keyserver examples.

$ 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) Verifizierung der Signatur:

$ 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 

Die Ausgabe sollte sagen "Good signature".


gpg: WARNUNG: Dieser Schlüssel wird nicht mit einem vertrauenswürdigen Signatur zertifiziert!

Ist für eine andere Frage;)

+4

Große Schritt-für-Schritt-Erklärung! –

+3

Für den Fall, dass die zu prüfende Datei gnupg ist (nicht in der Frage), sind SHA-1-Prüfsummen auf der gnupg-Site verfügbar, um den ersten gnupg-Download zu verifizieren. –

+0

Während der Signaturverifizierung verarbeitet gpg die Tarball-Datei und ihre entsprechende .sig-Datei als eine Einheit. Wenn der Tarball fehlt oder umbenannt wird, bietet gpg die Möglichkeit, den Tarball-Namen anzugeben. –

Verwandte Themen