it-swarm.com.de

Wo speichern Sie Ihren persönlichen privaten GPG-Schlüssel?

Ich möchte also pass verwenden, benötige aber dafür einen GPG-Schlüssel. Diese Anwendung speichert alle meine Passwörter, was bedeutet, dass es sehr wichtig ist, dass ich meinen einmal generierten privaten Schlüssel nicht verliere .

Festplatten brechen, Cloud-Anbieter sind im Allgemeinen nicht vertrauenswürdig. Nicht, dass ich ihnen nicht vertraue, dass sie nicht mit meinem Schlüssel herumspielen, aber ihre Sicherheit kann gefährdet sein und alle meine Passwörter können gefunden werden.

Wo kann ich meinen privaten GPG-Schlüssel sicher speichern?

199

Ich mag es, meine auf Papier zu lagern.

Mit einem JavaScript-Generator (read: offline) QR-Code erstelle ich ein Bild meines privaten Schlüssels in ASCII gepanzertem Formular) und drucke es dann aus Schlüssel-ID und speichern Sie es an einem physisch sicheren Ort.

Hier sind einige, die für Sie funktionieren sollten, egal welches Betriebssystem Sie verwenden, solange Sie einen Browser haben, der JavaScript unterstützt.

Für Windows-Benutzer:

Klicken Sie hier, um den JavaScript-QR-Codegenerator herunterzuladen: https://github.com/davidshimjs/qrcodejs/archive/04f46c6a0708418cb7b96fc563eacae0fbf77674.Zip

Extrahieren Sie die Dateien irgendwo und bearbeiten Sie index.html gemäß den nachstehenden Anweisungen.

Für MacOS- oder Unix-Benutzer:

$ # This specific version is to avoid the risk that if someone hijacks `davidshimjs`'s 
$ # repository (or he goes rogue), you will still be using the version that I vetted.
$ # For the truly paranoid you don't trust GitHub either, and you will want to verify the code you download yourself.
$ wget https://github.com/davidshimjs/qrcodejs/archive/04f46c6a0708418cb7b96fc563eacae0fbf77674.Zip
$ unzip qrcodejs-04f46c6a0708418cb7b96fc563eacae0fbf77674.Zip
$ cd qrcodejs-04f46c6a0708418cb7b96fc563eacae0fbf77674/
$ # We need to edit index.html so that it supports pasting your PGP key
$ # Open the file in a text editor like Notepad, vi, or nano
$ vi index.html

Ändern Sie Zeile 11 von:

<input id="text" type="text" value="http://jindo.dev.naver.com/collie" style="width:80%" /><br />

zu:

<textarea id="text" type="text" value="http://jindo.dev.naver.com/collie" style="width:80%" /></textarea><br />

Navigieren Sie nun zu dem Verzeichnis, das Sie hier mit Explorer, Finder oder Nautilus usw. erhalten.

Zum Beispiel:

$ pwd
/Users/george/Documents/Code/qrcodejs/qrcodejs-04f46c6a0708418cb7b96fc563eacae0fbf77674
$ open .

(Viewing the directory in Finder

Doppelklicken Sie nun auf index.html Datei, die Sie gerade bearbeitet und gespeichert haben.

(QR code being generated

Sie müssen Ihren PGP-Schlüssel höchstwahrscheinlich in Viertel oder sogar noch kleiner aufteilen, um schöne große QR-Codes zu erstellen, die Sie später problemlos scannen können. Klicken Sie nach dem Einfügen in den Textbereich vom Textfeld weg und Ihr QR-Code sollte angezeigt werden. Speichern Sie jeden, während Sie gehen, und benennen Sie sie entsprechend, damit Sie ihre Reihenfolge kennen!

Nachdem Sie alle Codes erstellt haben, scannen Sie sie beispielsweise mit einer QR-Code-Scanner-App für Mobiltelefone. Halten Sie dieses Gerät für Paranoide offline, sobald Sie einen Barcodeleser installiert haben, und führen Sie dann einen vollständigen Lösch- und Werksreset des Geräts durch, bevor Sie es wieder online stellen. Dadurch wird verhindert, dass die QR-Scanner-App Ihren PGP-Schlüssel verliert.


Wenn Sie einen großen Schlüssel oder viele Schlüssel haben, empfehle ich paperbak , obwohl Sie unbedingt Anweisungen aufschreiben müssen, wie Sie die Daten später wiederherstellen können. Genauso wichtig wie das Sichern ist das Wiederherstellen aus einem Backup. Ich würde dies wahrscheinlich mit Dummy-Daten versuchen, nur um sicherzugehen, dass Sie genau wissen, wie es funktioniert.

Erwähnenswert ist, dass Sie Ihren privaten Schlüssel mit einer Passphrase schützen können. Selbst wenn er bei einem Cloud-Anbieter gehostet wird, kann er Ihren privaten Schlüssel nicht sehen, aber dann Ihre gesamte Passwortsicherheit wird auf diese Passphrase und nicht auf den vollständigen privaten Schlüssel reduziert, ganz zu schweigen davon, dass Cloud-Anbieter über Nacht verschwinden können.

164
deed02392

An den Tagen, an denen meine Paranoia wie eine reife Tomate ist und mich bittet, sie zu pflücken, teile ich den privaten Schlüssel (natürlich ist er bereits durch Passphrasen geschützt) in zwei Hälften und mache dann eine dritte Saite, indem ich sie zusammen XOR-fache. Dann verwende ich eine einfache Passwortverschlüsselung (gpg --symmetric) auf jede Zeichenfolge und stellen Sie jede auf einen Remote-Server auf einem anderen Kontinent. Im Idealfall befindet sich jeder Remote-Server bei einem anderen ISP oder Cloud-Anbieter.

Aber während die Medizin wirkte - zumindest bis mir klar wurde, wie ehrgeizig die NSA] war -, habe ich in der Vergangenheit lediglich den (gesamten) privaten Schlüssel (wieder) verschlüsselt mit gpg --symmetric) und lege es auf mein Smartphone.

Nachdem ich die anderen Antworten gelesen habe, finde ich die Idee von drei QR-Codes, eingebettet in drei Familienfotos, blendend attraktiv. Zeit für eine stärkere Medizin?

55
Darren Cook

Dies ist nicht das, was ich derzeit benutze, aber ich denke darüber nach:

  1. Verschlüsseln Sie den privaten Schlüssel mit einem sehr langen symmetrischen Verschlüsselungsschlüssel
  2. Verwenden Sie Shamirs geheime Freigabe , um den symmetrischen Verschlüsselungsschlüssel in 7 Teile aufzuteilen (wie Voldemort). Für eine erfolgreiche Zusammenführung sind mindestens 5 Freigaben erforderlich.
  3. Finde heraus, wo 7 geheime Backups abgelegt werden sollen, einige Ideen:
    • medienkarte in einem Safe zu Hause
    • bedrucktes Papier in meiner Brieftasche
    • in Dropbox
    • übersee-Safe
    • hautimplantate
    • im Grab eines zufälligen Typen begraben
    • tätowiert zu giftiger Haustierschlange

Auf diese Weise kann ich den Zugriff auf einige Freigaben verlieren und trotzdem auf den Schlüssel zugreifen. Während ein Angreifer 5 verschiedene individuell sichere Orte kompromittieren müsste, an denen ich leicht Zugang habe, aber für die Handlanger des bösen dunklen Lords in diesem schwarzen Auto vor dem Haus schwer ist <setzt Alufolie auf>.

28
Lie Ryan

Eine Möglichkeit besteht darin, Ihren Schlüssel mit einer Passphrase zu verschlüsseln und den verschlüsselten Schlüssel in einem Cloud-Dienst zu speichern.

Ich habe den Schlüssel auf meinem Laptop (Hardware-verschlüsseltes Laufwerk) und auf einem Truecrypt-Container auf einer externen Festplatte als Backup. Ok, es ist kein Null-Risiko für Datenverlust, aber es ist auf ein für mich akzeptables Niveau gesunken.

17
paj28

Sie können Ihren privaten Schlüssel in einem Flash-Laufwerk und dieses Laufwerk in einem Schließfach aufbewahren. Stellen Sie außerdem sicher, dass Sie dieses Flash-Laufwerk nicht für Aktivitäten verwenden, bei denen es möglicherweise mit Malware infiziert wird.

15
Jor-el

Ich behalte den Schlüssel (und andere vertrauliche Daten wie eine Benutzername/Passwort-Liste) in einem truecrypt Container verschlüsselt. Dieser Container ist durch eine massive Passphrase geschützt. Der Container wird auch im Cloud-Speicher gesichert, sodass Änderungen von jedem meiner Computer synchronisiert werden.

Es ist nicht perfekt, aber wenn der Cloud-Anbieter stirbt, habe ich es immer noch auf meinen Computern synchronisiert. Wenn die Datei selbst kompromittiert wird, müssten sie die truecyrpt-Phrase und die Schlüsselpassphrase knacken.

6

Ich würde Steganographie verwenden, um den verschlüsselten Schlüssel in einer Reihe von 100 Fotos zu platzieren, die ich beispielsweise auf mehrere Cloud-Speicher (Box, Dropbox und OVH) hochlade.
Zuerst müssen Sie wissen, dass sich etwas auf diesem Bild befindet, herausfinden, was und entschlüsseln.
Es ist ein bisschen extrem, aber es widersteht Feuer besser als Papier.

4
Kiwy

Ich habe zwei Schlüssel, einen weniger sicheren auf dem Computer und einen in einer OpenPGP-Karte . Letzteres ist so sicher wie es nur geht, da der private Schlüssel niemals den Chip auf der Karte verlässt. (Vor Jahren musste ich aus Sicherheitsgründen gpg leicht modifizieren, um die sichere Tastatur meines Kartenlesers zu verwenden, anstatt die PIN der Karte von der PC-Tastatur zu erhalten, die für Keylogger-Angriffe anfällig sein kann.)

4
JimmyB

Ich mag die Idee wirklich, ein sehr langfristiges Backup der letzten Instanz auf Papier zu haben. (Neben einer verschlüsselten Archivierungs-CD an einem sicheren Ort.) Ich kann einfach keinen QR-Generator finden, der die gesamte Länge eines privaten Schlüssels unterstützt, und ich vertraue Paperbak erst, wenn die AES-Schlüsselgenerierung behoben wurde (und es scheint, als ob dies der Fall ist nur Windows sein).

Ich habe optar gefunden, das jede Datenlänge in ein maschinenlesbares Format codiert, aber jetzt müssen Sie es manuell aus C kompilieren. [Es sollte nicht schwer sein, etwas in Homebrew für Mac-Leute zu integrieren, und vielleicht kann ein Samariter einen Windows-Build beibehalten, wenn sich herausstellt, dass er gut funktioniert.]

paperkey sollte zum Ausdrucken/Verwenden von OCR zum Wiederherstellen eines privaten Schlüssels und zum Erstellen minimaler Zeichen für einen Barcode-/QR-Code-Generator geeignet sein.

3
Duke

Ich speichere meine in einer KeePassX-verschlüsselten Datei. Diese Datei wird in einem Git-Repository gespeichert, das ich auf allen Computern klone, auf denen ich die Passwörter verwenden muss. Der zusätzliche Vorteil ist, dass ich Passwörter synchronisieren kann, während ich immer eines der geklonten Repositorys verwenden kann, wenn der Server aus irgendeinem Grund die Datei zerstört. Wenn ich paranoid bin, kann ich ein TrueCrypt-Volume mit der KeePassX-verschlüsselten Datei erstellen.

Git gibt mir auch die Versionierung, damit ich immer zu früheren Versionen meiner Passwortdatei zurückkehren kann, das ist großartig.

3
dendini

Mach Folgendes:

  1. Wählen Sie zwei Zahlen, die Sie mögen: R und C.
  2. Gehen Sie zu Ihrer privaten Schlüsselzeile R und Spalte C und merken Sie sich das Zeichen X, das Sie dort finden.
  3. Ändern Sie dieses Zeichen in einen anderen zufälligen Wert.
  4. Speichern Sie Ihren geänderten privaten Schlüssel sicher in mehr als einem Cloud-Dienst (an verschiedenen geografischen Standorten).

Der dort gespeicherte Schlüssel ist ohne R, C und X nutzlos (vorausgesetzt, Sie kennen den Trick natürlich). Wenn man sich die Zeit leisten kann, R, C und X zu finden, dann ... viel Glück beim Erraten meines Passworts.

Auch das Auswendiglernen von R, C und X sollte aus der Sicht desjenigen, der die Änderung einführt, sehr einfach sein.

Hinweis: Mach es nicht ganz am Anfang oder Ende des Strings. Es gibt dort Muster, denen man folgen muss. Es wäre sehr einfach, die Änderung zu erraten.

0

Sie könnten versuchen, es auswendig zu lernen ...

Es könnte möglich sein, einen gzip-ähnlichen Algorithmus zu verwenden, den Menschen komprimieren und auswendig lernen können. Sie könnten in eine Melodie kodieren und sich das merken,

0
0xcaff

Der private Schlüssel ist bereits verschlüsselt. Eine erneute symmetrische Verschlüsselung würde jedoch nicht schaden. Danach sollte die Sorge um die physische Sicherheit liegen. Medienbeständigkeit und Sicherheit außerhalb des Standorts sollten die Hauptüberlegungen sein. Ein USB-Schlüssel ist wahrscheinlich für mindestens zehn Jahre in Ordnung, solange USB-Ports verfügbar sind. Bewahren Sie den Schlüssel an einem sicheren Ort auf. Ein Safe oder ein guter Safe außerhalb des Geländes sind gute Möglichkeiten. Dies sollte eine Wiederherstellung ermöglichen, falls das von Ihnen verwendete System jetzt auf eine nicht wiederherstellbare Weise ausfällt. beschriften und datieren Sie den USB-Stick. Eine verschlüsselte Kopie des Sperrzertifikats des Schlüssels sollte ebenfalls darin gespeichert werden. Machen Sie ein paar Duplikate, wenn Sie sich Sorgen über den Ausfall des USB-Sticks machen.

0
Rick

Haftungsausschluss: Verweist auf einen Code, den ich schreibe/meine eigene 'kleine' Lösung

Um diese Art von Problemen zu lösen (und allgemein wichtige, mittelgroße Dinge auf Papier zu "archivieren"), arbeite ich an qrdump , einem Weg, dies automatisch zu tun

  • 1) Teilen Sie Ihre Daten in Teile auf, die klein genug sind, um in qr-Codes zu passen
  • 2) auf eine Reihe von qr-Codes ausgeben
  • 3) Setze die qr-Codes mit einem vordefinierten Layout zu einem PDF zusammen.

Natürlich ist auch die inverse Transformation implementiert.

Zum Beispiel:

bash-4.4$ FOLDER_TESTS=$(mktemp -d)
bash-4.4$ cd $FOLDER_TESTS/
bash-4.4$ head -c 4096 </dev/urandom > dummy.dat # create a random file, 4096 bytes
bash-4.4$ sha256sum dummy.dat 
02f2c6dd472f43e9187043271257c1bf87a2f43b771d843e45b201892d9e7b84  dummy.dat
bash-4.4$ bash ~/Desktop/Git/qrdump/src/qrdump.sh --create-A4 --base64 --safe-mode --output ./pdf_dump.pdf --input dummy.dat # crete a printable qr-codes pdf of the file
SAFE to use: success restoring check
bash-4.4$ rm dummy.dat # the file is removed, so from now on only way to get it back is to restore from the pdf
bash-4.4$ bash ~/Desktop/Git/qrdump/src/qrdump.sh --base64 --read-A4 --input pdf_dump.pdf --output ./ # restore
bash-4.4$ sha256sum dummy.dat # the digest should be the same as the initial one to confirm good restore
02f2c6dd472f43e9187043271257c1bf87a2f43b771d843e45b201892d9e7b84  dummy.dat

Wenn Sie interessiert sind, mehr hier:

https://github.com/jerabaul29/qrdump

0
Zorglub29