Überprüfen Sie, ob eine GPG-verschlüsselte Datei von einem oder mehreren bestimmten Benutzern signiert ist.

Überprüfen Sie, ob eine GPG-verschlüsselte Datei von einem oder mehreren bestimmten Benutzern signiert ist.

Ich habe eine mit GPG verschlüsselte und signierte Datei.

ImManpage für GPGFür die --decryptOption heißt es:

Wenn die entschlüsselte Datei signiert ist, wird auch die Signatur überprüft.

Ich möchte mehr tun, als nur zu überprüfen, ob eine Signatur gültig ist, „wenn die Datei signiert ist“, sondern ich möchte:

  • Überprüfen Sie, ob die DateiIstunterzeichnet
  • Überprüfen, ob die Signatur von einem bestimmten Benutzer oder einer Teilmenge von Benutzern in meinem Schlüsselbund stammt

Mit welchem ​​GPG-Befehl kann dies durchgeführt werden?

Antwort1

--decryptDas meiste davon erledigt diese Option bereits.

$gpg --decrypt < test.gpg
gpg: verschlüsselt mit 4096-Bit-RSA-Schlüssel, ID CE7B5510340F19EF, erstellt am 31.10.2009
      "Gravitation <[email geschützt]>"
Der WELL (Whole Earth 'Lectronic Link) ist ein Beispiel für die neueste Entwicklung im Grenzbereich
Dörfer, das Computer-Bulletin. In dieser Art von Kleinstadt ist die Main Street ein
zentraler Minicomputer, an den (im Fall des WELL) bis zu 64 Mikrocomputer angeschlossen sind
können gleichzeitig über Telefonleitungen und kleine blinkende Kästen, sogenannte Modems, verbunden sein.
gpg: Signatur erstellt 2015-05-15T07:52:55 EEST
gpg: verwende RSA-Schlüssel D24F6CB2C1B52632
gpg: Gute Signatur von „grawity <[email geschützt]>" [ultimativ]
gpg: auch bekannt als „grawity <[email geschützt]>" [ultimativ]

Für maschinenlesbare Informationen verwenden Sie bitte--status-fd.

[GNUPG:] ENC_TO CE7B5510340F19EF 1 0
[GNUPG:] BEGIN_DECRYPTION
[GNUPG:] DECRYPTION_INFO 2 9
[GNUPG:] PLAINTEXT 62 1431665575
[GNUPG:] NEWSIG
[GNUPG:] SIG_ID 8AaWsnfpINFLIVjEqk665x7fuKA 2015-05-15 1431665575
[GNUPG:] GOODSIG D24F6CB2C1B52632 Grawity <[email geschützt]>
[GNUPG:] NOTATIONSNAME[email geschützt]
[GNUPG:] NOTATION_DATA 2357E10CEF4F7ED27E233AD5D24F6CB2C1B52632
[GNUPG:] VALIDSIG 2357E10CEF4F7ED27E233AD5D24F6CB2C1B52632 2015-05-15 1431665575 0 4 0 1 10 00 2357E10CEF4F7ED27E233AD5D24F6CB2C1B52632
[GNUPG:] TRUST_ULTIMATE
[GNUPG:] DECRYPTION_OKAY
[GNUPG:] GOODMDC
[GNUPG:] END_DECRYPTION

Sowohl GOODSIGals auch VALIDSIGbedeuten hier, dass die Signatur überprüft wurde, und TRUST_*entsprechen den Zertifizierungsstufen dieses Schlüssels. Beispielsweise haben Schlüssel, die Sie direkt signiert (oder lsigniert) haben, TRUST_FULL.

Sie können dies in ein Skript einbinden, das den Fingerabdruck in VALIDSIG mit einer Schlüssel-Whitelist vergleicht, oder sich einfach auf das Schlüsselvertrauensmodell verlassen.

Beachten Sie, dass Siekann nichtÜberprüfen Sie, ob eine Datei signiert ist, ohne sie vorher zu entschlüsseln, da PGP „Signieren vor der Verschlüsselung“ verwendet.

Antwort2

gpg --decrypt < data.pgp > /dev/null

Das Ergebnis ist die folgende Ausgabe:

gpg: encrypted with 4096-bit RSA key, ID B91FFCCDDEE362261A, created 2015-05-21
      "Shubham Chaudhary <[email protected]>"
gpg: Signature made Mon Aug 21 23:13:03 2017 IST
gpg:                using RSA key 71B6BEEFEED2DCA
gpg:                issuer "Shubham Chaudhary <[email protected]>"
gpg: Good signature from "Shubham Chaudhary <[email protected]>" [ultimate]

verwandte Informationen