Ich bin neu in Sachen Verschlüsselung im Allgemeinen und GPG im Besonderen. Mein Anwendungsfall ist das Speichern persönlicher Dokumente auf einem Netzlaufwerk. Diese Dokumente sind Scans (z. B. Diplome, Papiere). Ich habe einen GPG-Schlüssel mit generiert gpg --gen-key
und dann einige Bilder mit verschlüsselt gpg -e -r <name> <file>
. Standardmäßig werden anscheinend Dateien ausgegeben, die nach dem Original benannt und mit dem Suffix versehen sind .gpg
, z. B. diploma.jpg
wird aus diploma.jpg.gpg
.
Wenn der Dokumenttyp bekannt ist, öffne ich dann die Tür für einen Angriff mit bekanntem Klartext?
Welche Schritte muss ich außerdem unternehmen, um eine Sicherungskopie meines Schlüssels zu erstellen (auf Papier ausdrucken usw.)?
Antwort1
ich würde mir über den Dateinamen und die mögliche Kenntnis der ersten paar Bytes keine Gedanken machen. Wenn Ihnen dies jedoch Unbehagen bereitet, bedenken Sie Folgendes:
- Sie können einen Container verwenden, entweder .7z oder .zip mit AES-Verschlüsselung
- Sie können ein Containerprogramm wie Truecrypt verwenden
merken Sie sich:
gpg verschlüsselt Ihre Datei im gemischten Modus, d. h. es verwendet den asymmetrischen Schlüssel, um einen „Sitzungsschlüssel“ zu verschlüsseln, und verwendet dann diesen Sitzungsschlüssel, um die eigentlichen Daten zu verschlüsseln. Sie gewinnen also eigentlich nichts, wenn Sie asymmetrische Schlüssel verwenden, um Dinge zu verschlüsseln, die nur für Sie von Bedeutung sind (denken Sie daran: asymmetrische Verschlüsselung ist nur für etwas wie den Schlüsselaustausch nützlich, wenn die Datenmenge relativ gering ist).
es gibt keinen Grund, keine symmetrische Verschlüsselung zu verwenden, da Sie sich die Passphrase für Ihre Dateien/den Container ohnehin merken möchten:
gpg --symmetric -e
da du dich als Neuling in der Materie bezeichnest: lies mal ein bisschen was dazu im gnupg-Handbuch:
Antwort2
GPG komprimiert die Datei vor der Verschlüsselung, wodurch die Wahrscheinlichkeit eines Angriffs auf Klartext unabhängig vom Dateityp verringert wird. Sollte es außerdem in seltenen Fällen zu einer Kompromittierung einer Nachricht kommen, ist esnichtDies deutet darauf hin, dass bei den Empfängern dieser Nachricht ein kompromittierter Schlüssel vorliegt.
Der Grund für den letzten Teil hängt mit dem Prozess zusammen, mit dem GPG Nachrichten und Dateien verschlüsselt. Zuerst wird der Inhalt komprimiert, normalerweise mit zlib. Dann werden die komprimierten Daten symmetrisch mit einem Einmalkennwort, einem sogenannten Sitzungsschlüssel, verschlüsselt. Anschließend wird der Sitzungsschlüssel asymmetrisch mit den öffentlichen Schlüsseln der Empfänger verschlüsselt. Wenn die Nachricht entschlüsselt wird, läuft der Prozess umgekehrt ab: Der Empfänger entschlüsselt den Sitzungsschlüssel mit seinem geheimen Schlüssel und seiner Passphrase, GPG verwendet den Sitzungsschlüssel, um die symmetrisch verschlüsselten Daten zu entschlüsseln, und schließlich werden sie dekomprimiert.
Bei einem Angriff auf eine einzelne Nachricht ist die Wahrscheinlichkeit größer, dass der Sitzungsschlüssel ermittelt wird, als dass einer der öffentlichen Schlüssel kompromittiert wird.
Wenn Sie die Dateitypen dennoch verbergen möchten, gehen Sie wie folgt vor:
gpg -ear $RECIPIENT_ID -o filename.asc filename.odt
Um beim Entschlüsseln den ursprünglichen Dateinamen wiederherzustellen, gehen Sie wie folgt vor:
gpg --use-embedded-filename filename.asc
GPG schreibt die entschlüsselten Daten unter dem ursprünglichen Dateinamen, der in den symmetrisch verschlüsselten Daten gespeichert ist, zusammen mit anderen Informationen, die zum Wiederherstellen der Daten erforderlich sind.
Hinweis: Verwenden Sie das oben eingebettete Dateinamen-Flag nicht, wenn Sie Chiffretext aus einem E-Mail-Programm manuell entschlüsseln, insbesondere wenn Sie Thunderbird und Enigmail verwenden. Viele E-Mail-Verschlüsselungsprogramme (einschließlich Thunderbird und Enigmail) weisen dem Entwurf keinen ursprünglichen Dateinamen zu, und das Entschlüsseln auf diese Weise kann zu Problemen führen, z. B. beim Versuch, Daten in einen Null-Dateinamen zu schreiben.
Antwort3
Soweit ich weiß, ist es zum Knacken völlig nutzlos, den Datentyp einer verschlüsselten Datei zu kennen, da die Verschlüsselung den Datentyp nicht berücksichtigt. Für die Verschlüsselung sind es bloße Bits (Zahlen) ohne jede Bedeutung.
Was Ihren Schlüssel betrifft: Die sicherste Option ist, ihn sich zu merken, da auf Ihre Gedanken nicht zugegriffen werden kann ;)
Antwort4
Um den zweiten Teil Ihrer Frage zu beantworten:
Welche Schritte muss ich außerdem unternehmen, um eine Sicherungskopie meines Schlüssels zu erstellen (auf Papier ausdrucken usw.)?
Lassen Sie uns zuerst über das Widerrufszertifikat sprechen. Sie sollten unbedingt das Widerrufszertifikat Ihres Hauptschlüssels erstellen und sichern. Viele Leute machen eine Papierkopie (ASCII-geschützt oder QR-Code) und bewahren sie an einem sicheren Ort auf, beispielsweise in einem Safe, einem verschlossenen, feuerfesten Kasten oder einem Bankschließfach. Wenn Ihr Hauptschlüssel (der Zertifizierungsschlüssel) kompromittiert wird, haben Sie eine Sicherungskopie, mit der Sie ihn widerrufen können, falls das Widerrufszertifikat von Ihrem Gerät verschwindet oder das Gerät verloren geht usw.
Wenn Sie kein Widerrufszertifikat haben, erstellen Sie es mit dem folgenden Befehl. „mykey“ ist der Name des Schlüssels, also beispielsweise die letzten 8 Zeichen des Fingerabdrucks.
gpg --output revoke.asc --gen-revoke meinSchlüssel
Das Widerrufszertifikat sieht ungefähr so aus und lässt sich leicht ausdrucken. Aber seien Sie vorsichtig. Durch das Ausdrucken kann es kompromittiert werden.
-----BEGINNEN SIE DEN PUBLIC-KEY-BLOCK DES PGP-GRUNDLAGENS-----
Kommentar: Dies ist eine Widerrufsbescheinigung
iQG2BCABCAAgFiEEiz1thFzdqmEJkNsdNgBokN1gxcwFAlsrcOsCHQAACgkQNgBo kN1gxczZ1Qv/aUNZgG0Sjasbu2sDMcX+rjEUNpIGUB6zjcTsPwpXfFo11aM3yefb k0FgMohA8HUwmN4ka+P31jYuNuLNCqFdT8DKKuQk6XgKnX3NieahG/dFaVANXyHR .....................................dies ist lediglich ein Beispiel für ein Widerrufszertifikat................................................... =4lcB
-----ENDE DES PGP-ÖFFENTLICHEN SCHLÜSSELBLOCKS-----
Nun zum Sichern Ihres Hauptschlüssels:
Lösung eins: Das Sichern des Hauptschlüssels kann ganz einfach sein, indem man die gesamte Datei kopiert. Lösung zwei: Ein Offline-Hauptschlüssel (C) trägt zu Ihrer Sicherheit bei und kann sich je nach Risikoeinschätzung lohnen. Wenn Sie zum Speichern Ihrer Schlüssel einen Laptop oder ein Netbook verwenden, ist es möglicherweise besonders sinnvoll, Ihren Hauptschlüssel offline zu speichern.
Es gibt zwei Möglichkeiten, einen Offline-Hauptschlüssel zu erhalten: der harte WegUndder einfachere harte Weg.
Nachdem Sie den geheimen Schlüssel aus Ihrem Hauptschlüssel (C) entfernt und ausgeführt haben
gpg2 -K
Das Ergebnis sollte wie folgt aussehen:
Beachten Sie die#nebenSek--das zeigt an, dass der geheime Schlüssel nicht mehr vorhanden ist.