PGP (GnuPG) - Wie lautete der ursprüngliche Dateiname?

11

John möchte 1.txtzu Paul senden .

Er verschlüsselt es. Jetzt heißt die Datei myFile.pgpund er sendet sie an Paul.

Paul bekommt die Akte.

Wie (wenn möglich) kann Paul wissen, wie der ursprüngliche Dateiname ( 1.txt) lautete? Gibt es einen Parameter ( --xxx), um den Dateinamen anzuzeigen?

Ich verwende GNU PGP (GnuPG) im Konsolenmodus .

Royi Namir
quelle

Antworten:

17

Mit GnuPG kann der ursprüngliche Dateiname in angezeigt werden gpg --list-packets.

$ gpg --list-packages test.gpg
: pubkey enc package: version 3, algo 1, keyid CE7B5510340F19EF
    Daten: [4095 Bit]
: verschlüsseltes Datenpaket:
    Länge: 67
    mdc_method: 2
gpg: verschlüsselt mit 4096-Bit-RSA-Schlüssel, ID CE7B5510340F19EF, erstellt am 31.10.2009
      "Mantas Mikulėnas <[email protected]>"
: komprimiertes Paket: algo = 2
: Literales Datenpaket:
    Modus b (62), erstellt 1356362981, name = "passwords.txt",
    Rohdaten: 8 Bytes

(Hinweis: Das gesamte Literaldatenpaket, einschließlich des Dateinamens, ist verschlüsselt. Wenn Sie nicht über den privaten Schlüssel verfügen, können Sie den Namen auch nicht sehen.)


Alternativ können Sie --decryptzusammen mit --verbose(oder -v -dkurz) verwenden:

$ gpg --verbose --decrypt test.gpg> NUL
gpg: öffentlicher Schlüssel ist CE7B5510340F19EF
gpg: Verwenden des Unterschlüssels CE7B5510340F19EF anstelle des Primärschlüssels D24F6CB2C1B52632
4096-Bit-RSA-Schlüssel, ID CE7B5510340F19EF, erstellt am 31.10.2009
         (Unterschlüssel der Hauptschlüssel-ID D24F6CB2C1B52632)
gpg: verschlüsselt mit 4096-Bit-RSA-Schlüssel, ID CE7B5510340F19EF, erstellt am 31.10.2009
      "Mantas Mikulėnas <[email protected]>"
gpg: AES256-verschlüsselte Daten
gpg: ursprünglicher Dateiname = 'passwords.txt'

(Verwenden Sie > /dev/nullstattdessen unter Linux .)


Wenn Sie die gesamte Datei entschlüsseln und speichern möchten , verwenden Sie die folgende --use-embedded-filenameOption:

$ gpg -v --use-embedded-filename test.gpg
 … langweilige Ausgabe…
gpg: ursprünglicher Dateiname = 'passwords.txt'
Die Datei `passwords.txt 'existiert. Überschreiben? (j / N) n

(Hinweis: Sie sollten-d oder --decryptmit dieser Option nicht verwenden , da niemals der eingebettete Dateiname verwendet wird. Verwenden Sie stattdessen die Aktion "Standard".)


Vergessen Sie nicht, dass nicht alle Dateien Namen haben. Wird unter Linux gpghäufig verwendet, um die Ausgabe eines anderen Programms direkt zu verschlüsseln, ohne sie in einer Datei zu speichern. Es würde sich dann zeigen als:

$ echo Testing | gpg --store | gpg --list-pakete
: komprimiertes Paket: algo = 1
: Literales Datenpaket:
    Modus b (62), erstellt 1356362394, name = "" ,
    Rohdaten: 8 Bytes

Beim Verschlüsseln (oder nur Speichern) kann der eingebettete Dateiname mit geändert werden --set-filename.

$ echo Testing | gpg --store --set-filename "test.txt" | gpg --list-pakete
: komprimiertes Paket: algo = 1
: Literales Datenpaket:
    Modus b (62), erstellt 1356362790, name = "test.txt",
    Rohdaten: 8 Bytes
user1686
quelle
das --list-packetsextrahiert nicht. nur anzeigen ... (richtig?)
Royi Namir
1
@ RoyiNamir: Richtig. Es wird jedoch entschlüsselt, da einige Pakete (einschließlich des ursprünglichen Dateinamens) verschlüsselt sind.
user1686
Was ist das -v? es erscheint nicht ingpg -?
Royi Namir
@ RoyiNamir: Es ist die Kurzform von --verbose. (Genau wie -?und -dsind die kurzen Formen --helpund --decrypt.) Meine Version von GnuPG tut zeigen als: „-v, --verbose“ unter dem Abschnitt „Optionen“.
user1686
Ich verstehe nicht: Warum gpg -v --use-embedded-filename bbb.gpgdie Datei extrahieren?
Royi Namir