Signatur überprüfen

Wie kann man die Echtheit einer Datei mit Hilfe einer Signatur mit GnuPG überprüfen?

Voraussetzungen

  • GnuPG Software
  • Öffentlicher Schlüssel
  • Fingerprint des öffentlichen Schlüssels (40 Stellen)
  • Zu überprüfende Datei
  • Signatur-Datei (*.sig)


Vorgehen

Download des öffentlichen Schlüssels der signierenden Person von einem Keyserver. Der öffentliche Schlüssel wird anhand der letzten 16 Stellen des Fingerprints ausgewählt:

gpg --keyserver hkp://pgp.mit.edu --recv-keys 0xXXAABBCCDDEEFFXX
gpg --keyserver x-hkp://pool.sks-keyservers.net --recv-keys 0xXXAABBCCDDEEFFXX

Import einer Datei mit einem öffentlichen Schlüssel:

gpg --import key.asc
gpg --import newkey.txt

Überprüfen des 40-stelligen Fingerprints des heruntergeladenen öffentlichen Schlüssels. Dieser sollte mit dem öffentlich publizierten Fingerprint des öffentlichen Schlüssels übereinstimmen:

gpg --fingerprint 0xXXAABBCCDDEEFFXX

Überprüfen der Datei mit Hilfe der Signatur.

gpg --verify file.foo.sig file.foo   # Wichtig: Erster Parameter ist die Signatur, zweiter die Datei.
gpg --verify file.foo{.asc*,}

Das Ergebnis muss folgendermaßen aussehen:

  • Der Haupt-Fingerabdruck muss mit dem öffentlich publizierten übereinstimmen
  • Die E-Mailadressen sollten plausibel sein.
  • Folgende Zeilen sollten enthalten sein:
gpg: Unterschrift vom...
gpg: Korrekte Unterschrift von...

oder

gpg: Signature made...
gpg: Good signature from...