Ich habe Schlüssel mit GPG generiert, indem ich den folgenden Befehl

gpg --gen-key 

Jetzt muss ich das Schlüsselpaar in eine Datei exportieren. private und öffentliche Schlüssel für private.pgp bzw. public.pgp. Wie mache ich das?

Kommentare

  • P.S. Verwenden Sie in GPG 2 gpg --full-generate-key, um eine vollständige Schnittstelle zum Generieren von Schlüsseln zu erhalten.

Antwort

Öffentlichen Schlüssel exportieren

Dieser Befehl exportiert eine ASCII-gepanzerte Version des öffentlicher Schlüssel:

gpg --output public.pgp --armor --export username@email

Geheime Schlüssel exportieren

Dieser Befehl exportiert eine ASCII-gepanzerte Version des geheimen Schlüssels:

gpg --output private.pgp --armor --export-secret-key username@email


Sicherheitsbedenken, Sicherung und Speicherung

Ein öffentlicher PGP-Schlüssel enthält Informationen Dies ist im Allgemeinen akzeptabel, da der öffentliche Schlüssel zum Verschlüsseln von E-Mails an Ihre Adresse verwendet wird. In einigen Fällen ist dies jedoch unerwünscht.

In den meisten Anwendungsfällen ist Der geheime Schlüssel muss nicht exportiert werden und sollte nicht d verteilt . Wenn Sie einen Sicherungsschlüssel erstellen möchten, sollten Sie die Sicherungsoption verwenden:

gpg --output backupkeys.pgp --armor --export-secret-keys --export-options export-backup user@email

Dadurch werden alle erforderlichen Informationen exportiert Stellen Sie die geheimen Schlüssel einschließlich der Informationen zur Vertrauensdatenbank wieder her. Stellen Sie sicher, dass Sie alle geheimen Sicherungsschlüssel von der Computerplattform und an einem sicheren physischen Ort aufbewahren.

Wenn dieser Schlüssel für Sie wichtig ist, empfehle ich, den Schlüssel mit paperkey . Und legen Sie den Papierschlüssel in einen feuerfesten / wasserdichten Safe.

Server für öffentliche Schlüssel

Im Allgemeinen ist es nicht ratsam, persönliche öffentliche Schlüssel auf Schlüsselservern zu veröffentlichen. Es gibt keine Methode zum Entfernen eines Schlüssels, sobald dieser veröffentlicht wurde, und es gibt keine Methode, um sicherzustellen, dass der Schlüssel auf dem Server von dort platziert wurde der vermeintliche Besitzer des Schlüssels.

Es ist viel besser, Ihren öffentlichen Schlüssel auf einer Website zu platzieren, die Sie besitzen oder steuern. Einige Leute empfehlen keybase.io für die Verteilung. Diese Methode verfolgt jedoch die Teilnahme an verschiedenen sozialen und technischen Gemeinschaften, die für einige Anwendungsfälle möglicherweise nicht wünschenswert sind.

Für technisch versierte Personen empfehle ich persönlich, die webkey Schlüsselerkennungsdienst auf Domänenebene.

Kommentare

  • Ist der exportierte Schlüssel (zweiter Befehl) verschlüsselt oder muss ich verschlüsseln Sie es selbst, bevor Sie es auf ag speichern ein USB-Laufwerk?
  • @Julian … Der exportierte geheime Schlüssel hat den gleichen Schutz wie der exportierte geheime Schlüssel. Wenn es eine Passphrase gab, ist die Passphrase erforderlich, um den geheimen Schlüssel zu importieren.
  • Ich habe ein Backup mit der obigen Methode erstellt, aber dummerweise vergessen, es zu testen. Wenn mir ' nichts fehlt, kann ich ' meinen öffentlichen Schlüssel scheinbar nicht von der angegebenen Sicherungsmethode wiederherstellen ( usw.). Fehlt mir etwas oder habe ich die Art der Sicherung falsch verstanden?
  • Die Dokumentation kennt --export-secret-keys, aber nicht --export-secret-key.
  • @OMGtechy Wie haben Sie versucht, die Schlüssel wiederherzustellen? Ich könnte öffentliche Schlüssel mit gpg --import-options restore --import backupkeys.pgp wiederherstellen, aber das stellt keine geheimen Schlüssel wieder her, sondern nur die öffentlichen, wenn backupkeys.pgp von gpg --output backupkeys.pgp --armor --export --export-options export-backup. In diesem Fall ist --armor nicht erforderlich und export-backup könnte durch backup ersetzt werden.

Antwort

  • Listen Sie die Schlüssel auf, die Sie haben: gpg --list-secret-keys
  • Exportieren Sie den Schlüssel: gpg --export-secret-key name > ~/my-key.asc
  • Kopieren Sie ihn auf einen anderen Computer;
  • Importieren Sie den Schlüssel: gpg --import my-key.asc

Kommentare

  • Beachten Sie, dass .asc steht für ASCII, aber die Ausgabe von gpg --list-secret-keys ist binär.
  • Tatsächlich ist .asc für ASCII armored und die Ausgabe ist verschlüsselter Text. Sie können es sicher katzen und selbst sehen. Wie bei den meisten Linux-Dateien ist auch die Dateierweiterung beliebig, ' muss technisch nicht aufsteigen. @WeihangJian
  • Es ist eine gute Idee, die Schlüsseldatei zu entfernen, nachdem sie importiert und erfolgreich getestet wurde. Wenn sich die Datei dort befindet, kann sie böswillig verwendet werden.

Antwort

An export SOMEKEYID öffentlicher Schlüssel für einen output Datei:

gpg --output public.pgp --export SOMEKEYID 

Wenn Sie mit geheimen Schlüsseln arbeiten, ist es im Allgemeinen vorzuziehen, diese nicht in Dateien zu schreiben und, Verwenden Sie stattdessen SSH, um sie direkt zwischen Computern zu kopieren, indem Sie nur gpg und eine Pipe verwenden:

gpg --export-secret-key SOMEKEYID | ssh othermachine gpg --import 

Wenn Sie müssen Wenn Sie jedoch Ihren geheimen Schlüssel in eine Datei ausgeben, stellen Sie bitte sicher, dass diese verschlüsselt ist. Hier erfahren Sie, wie Sie dies mithilfe der AES-Verschlüsselung mithilfe des Dark Otter-Ansatzes erreichen:

gpg --output public.gpg --export SOMEKEYID && \ gpg --output - --export-secret-key SOMEKEYID |\ cat public.gpg - |\ gpg --armor --output keys.asc --symmetric --cipher-algo AES256 

Der letzte Ansatz ist ideal, wenn Sie eine physische Sicherung Ihrer öffentlichen und privaten Schlüssel erstellen möchten, um sich vor einem Festplattenfehler zu schützen, wenn keine andere Möglichkeit besteht, den Zugriff auf Ihre Schlüssel wiederherzustellen.

Siehe Verschieben von GPG-Schlüsseln privat für zusätzliche Überlegungen.

Antwort

“ GnuPG (auch bekannt als PGP / GPG) „ Weitere Informationen

Schlüssel generieren: gpg --gen-key

Alle Schlüssel anzeigen: gpg --list-keys

Öffentlichen Schlüssel exportieren:

gpg --export -a --output [path-to-public-key].asc [email-address] 

Geheime Schlüssel exportieren:

gpg -a --export-secret-keys > [path-to-secret-key].asc 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.