Ich habe eine mit GPG verschlüsselte und signierte Datei.
ImManpage für GPGFür die --decrypt
Option 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
--decrypt
Das 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 GOODSIG
als auch VALIDSIG
bedeuten 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]