Author: Arman The Parman | Original Date: 11/12/21 | Translated by: Leon A. Wankum | Trustless Private Messaging with Public/Private Key Cryptography
Veröffentlicht im Bitcoin-Magazin
Als Bitcoiner benötigen Sie einen sicheren Weg, um privat zu kommunizieren, ohne sich darauf verlassen zu müssen, dass ein Unternehmen Ihre Daten für Sie verschlüsselt. Beispielsweise sind frei verfügbare Methoden mit Ende-zu-Ende-Verschlüsselung wie Telegram (nicht mit der Standardoption) und Signal und andere einfach zu verwenden, aber ich vertraue ihnen nicht vollständig.
Dieser Artikel zeigt Ihnen, wie Sie Nachrichten mit der kostenlosen Open-Source-Software gpg (gnu privacy guard) senden, die die Verschlüsselung/Entschlüsselung mithilfe der Kryptografie mit öffentlichen/privaten Schlüsseln ermöglicht. Beim Heimwerken ist es am Anfang schwieriger, aber wenn man den Dreh raus hat, ist es nicht mehr so schwer. Ich werde Sie Schritt für Schritt durch die Anleitung führen, folgen Sie einfach den Anweisungen und setzen Sie ein Lesezeichen für diesen Artikel zum späteren Nachschlagen.
Hier ist ein wenig mehr Hintergrund über gpg (einschließlich pgp) für diejenigen, die tiefer graben möchten. Es ist interessant anzumerken, dass die Kryptografie mit öffentlichen/privaten Schlüsseln nicht nur zur Verschlüsselung/Entschlüsselung verwendet wird, sondern auch zur Verifizierung von digitalen Signaturen – die bei Bitcoin-Transaktionen verwendet werden, und auch von Daten im Allgemeinen (z. B. Überprüfung, ob die von Ihnen heruntergeladene Software echt ist und nicht manipuliert, wie im ersten Video hier gezeigt wird).
Wie es funktioniert
Um ein öffentliches/privates Schlüsselpaar zu erstellen, generiert Ihr Computer eine sehr große („unerratbare“) Zufallszahl, aus der die gpg-Software für uns einen privaten Schlüssel erstellt, und daraus wird ein öffentlicher Schlüssel erstellt (genau wie Bitcoin Private Keys, mehr Infos hier).
Der öffentliche Schlüssel wird mit der Welt geteilt (wie eine Bitcoin-Adresse) und enthält Ihre ID (E-Mail und Name), die Sie online veröffentlichen. Hier ist meiner. Stellen Sie sich den öffentlichen Schlüssel wie einen offenen Tresor vor. Jeder kann eine Nachricht schreiben und diese Nachricht mit Ihrem ÖFFENTLICHEN Schlüssel verschlüsseln (dh ihn in Ihren Safe legen und die Tür abschließen) – nur Sie haben den privaten Schlüssel und daher können nur Sie Ihren Safe öffnen (dh die Nachricht entschlüsseln und lesen).
Eine Randbemerkung: Machen Sie sich darüber vorerst keine Sorgen, ich werde in Zukunft einen Artikel darüber schreiben – beachten Sie nur, dass es bei Bitcoin keine „Verschlüsselung“ bei Zahlungen gibt. Stattdessen gibt es mit privaten Schlüsseln erstellte „Signaturen“, die von jedem mit öffentlichen Schlüsseln „verifiziert“ werden können.
Überblick
In diesem Leitfaden werde ich Sie durch die folgenden Schritte führen:
- gpg herunterladen
- Erstellen Sie Ihren eigenen privaten/öffentlichen Schlüssel
- Speichern Sie Ihren privaten Schlüssel auf einem USB-Laufwerk
- Laden Sie Ihren privaten Schlüssel in den Schlüsselbund Ihrer anderen Computer hoch.
- Laden Sie Ihren PUBLIC Key auf einen Keyserver und/oder Ihre Website hoch
- Laden Sie den Fingerabdruck Ihres öffentlichen Schlüssels in Ihr Online-Profil hoch, z. B. Twitter/Keybase
- Senden Sie mir eine mit meinem öffentlichen Schlüssel verschlüsselte Nachricht, und ich werde diese mit Ihrem öffentlichen Schlüssel verschlüsseln
GPG herunterladen
Als erstes müssen Sie die gpg-Software herunterladen.
Linux
Wenn Sie Linux verwenden, sollte gpg bereits installiert sein. Wenn nicht, können Sie es mit dem Befehl installieren:
sudo apt-get install gnupg
Wenn Sie nur überprüfen möchten, ob es installiert ist, geben Sie Folgendes ein:
gpg --version
HINWEIS : Wenn Sie eine Bitcoin-Node auf einem Raspberry Pi ausführen, können Sie tatsächlich SSH verwenden, um auf das Terminal Ihres Pi zuzugreifen und solche gpg-Befehle auszuführen. Wenn das, was ich gesagt habe, keinen Sinn ergibt, machen Sie sich keine Sorgen, ignorieren Sie es, es würde den Rahmen dieses Artikels sprengen.
Mac
Wenn Sie einen Mac haben, müssen Sie „GPG Suite“ herunterladen und installieren – es ist kostenlos, es sei denn, Sie möchten auch die E-Mail-Tools (nicht erforderlich). Dadurch erhalten Sie die Befehlszeilentools, die Sie benötigen.
Windows
Laden Sie „Gpg4Win“ herunter und installieren Sie es. Es ist kostenlos. Vor dem Herunterladen gibt es eine Spendenseite, Sie können 0 $ auswählen, um fortzufahren.
Bei der Installation können Sie alle Kontrollkästchen außer dem ersten deaktivieren:
Erstellen Sie Ihren eigenen privaten/öffentlichen Schlüssel
Öffnen Sie das Terminal in Mac oder Linux oder die Eingabeaufforderung in Windows.
Eintippen:
gpg --full-generate-key
Wählen Sie die Default-RSA-Option:
Wählen Sie dann die Größe Ihres Schlüssels. Größer ist sicherer:
Wählen Sie dann aus, wie lange der Schlüssel gültig sein soll. Ich ziehe es vor, den Schlüssel nicht verfallen zu lassen.
Dann füllst Du einige persönliche Daten aus. Dies wird öffentlich gemacht, damit die Leute wissen, wem der öffentliche Schlüssel gehört. Die Daten werden tatsächlich in den Schlüssel eingebettet. Wählen Sie „O“ für „Okay“, um fortzufahren.
Sperren Sie dann Ihren privaten Schlüssel mit einer „Passphrase“.
Mir wurde geraten, während der Schlüsselerstellung die Maus zu bewegen oder auf der Tastatur zu tippen, um dem Schlüssel zusätzliche Zufälligkeit zu verleihen. Dies sind die Details des von mir erstellten Schlüssels (ganz unten):
Speichern Sie Ihren öffentlichen Schlüssel auf einem USB-Laufwerk
Der Computer, den Sie zum Erstellen des privaten Schlüssels verwendet haben, hat den Schlüssel in seinem „Schlüsselbund“ und ist mit einer Passphrase gesperrt. Der Schlüsselbund ist nur ein abstraktes Konzept – die Schlüssel werden eigentlich nur irgendwo in einer Datei gespeichert.
Ich schlage vor, Sie sichern Ihren privaten Schlüssel auf einem USB-Stick. Auf diese Weise können Sie es bei Bedarf auf einen anderen Computer kopieren und das Verlustrisiko verringern.
Dazu müssen wir ihn zunächst aus dem Schlüsselbund exportieren und in eine Datei ablegen.
Beginnen Sie damit, die ID des Schlüssels abzurufen:
gpg --list-keys
Dies zeigt Ihnen alle Schlüssel (öffentlich und privat) im Schlüsselbund Ihres Computers:
Kopieren Sie die Schlüssel-ID in die Zwischenablage. Meins ist:
D7200D35FF3BEDFDAB6E0C996565B2E40BC9A48F
Dann exportieren wir die öffentlichen Schlüssel in eine Datei und müssen die Schlüssel-ID in den Befehl einfügen (deshalb haben wir sie in die Zwischenablage kopiert):
Der obige Befehl verwendet gpg und hat einige Optionen.
Die Option „–output“ gibt an, dass die Ausgabe in eine Datei gehen soll, die direkt danach bereitgestellt wird.
„public.gpg“ ist der Name der Datei, die ich ausgewählt habe, und sie wird erstellt, wenn der Befehl ausgeführt wird.
„–armor“ gibt an, dass die Ausgabe im ASCII-Armored-Format erfolgen soll und „–export“ gibt an, welcher Schlüssel aus dem Schlüsselbund exportiert werden soll, der direkt danach bereitgestellt wird.
Wenn Sie den Inhalt der Datei sehen möchten, verwenden Sie einfach den Befehl "less" ('q' beendet die Funktion 'less'):
less public.gpg
Als nächstes exportieren wir den privaten Schlüssel. Der Befehl ist wie der vorherige mit einigen Anpassungen. Ändern Sie den Dateinamen in etwas wie „private.gpg“ und ändern Sie die Option „–export“ in „–export-secret-key“.
Wir haben jetzt die Dateien „public.gpg“ und „private.gpg“ im aktuellen Verzeichnis. Kopieren Sie sie auf ein USB-Laufwerk und bewahren Sie sie sicher/versteckt auf. Es ist nicht so sensibel wie ein privater Bitcoin-Schlüssel, aber der Verlust/Diebstahl der Datei „private.gpg“ würde es jemandem ermöglichen, sich als Sie auszugeben. Wenn Ihre Passphrase stark ist, ist es unwahrscheinlich, dass ein Angreifer Ihren privaten Schlüssel verwenden kann, selbst wenn er ihn in seine schmutzigen Hände bekommen hat.
Laden Sie Ihre Schlüssel in den Schlüsselbund Ihres anderen Computers hoch
Bringen Sie Ihr USB-Laufwerk mit Ihrem privaten Schlüssel zu Ihrem anderen Computer. Stellen Sie sicher, dass gpg installiert ist. Öffnen Sie ein Terminal und navigieren Sie zum Speicherort Ihrer Datei. Geben Sie den Befehl ein:
gpg --import private.gpg
Denken Sie daran, dass „private.gpg“ ein Dateiname ist, also ersetzen Sie das durch den Namen Ihrer Datei, kopieren Sie den Befehl nicht einfach blind, ohne nachzudenken. Sie werden aufgefordert, die Passphrase einzugeben, und dann werden der private und der öffentliche Schlüssel auf einmal importiert.
Um den privaten Schlüssel zu löschen, lautet der Befehl:
gpg --delete-secret-keys KEY_ID
Ersetzen Sie KEY_ID durch die Schlüssel-ID oder E-Mail Ihres Schlüssels.
Laden Sie Ihren PUBLIC Key auf einen Keyserver und/oder Ihre Website hoch
Weltweit sind mehrere beliebte Schlüsselserver im Einsatz. Die wichtigsten Schlüsselserver synchronisieren sich selbst, genau wie Bitcoin-Nodes, daher ist es in Ordnung, einen Schlüsselserver in Ihrer Nähe im Internet auszuwählen und ihn dann regelmäßig zum Senden und Empfangen von Schlüsseln (natürlich öffentliche Schlüssel) zu verwenden.
gpg --keyserver keyserver.ubuntu.com --send-key D7200D35FF3BEDFDAB6E0C996565B2E40BC9A48F
Der obige Befehl befindet sich in einer Zeile. Nach „–send-key“ befindet sich ein Leerzeichen, dass möglicherweise nicht offensichtlich ist, da die Formatierung in Ihrem Browser die Zeile möglicherweise in zwei Teile aufteilt.
„–keyserver“ ist eine Option, die als nächstes die Webadresse eines Schlüsselservers erwartet.
„–send-key“ ist eine Option, die eine Key_ID erwartet.
Wenn Sie einen öffentlichen Schlüssel einer anderen Person direkt von einem Schlüsselserver importieren möchten, geben Sie den obigen Befehl ein, ändern Sie jedoch „–send-key“ in „–recv-key“ und verwenden Sie seine/ihre Key_ID.
Laden Sie den Fingerabdruck Ihres öffentlichen Schlüssels auf Twitter/Keybase hoch
Wieso? Wenn Sie an verschiedenen Stellen eine Kurzversion Ihres öffentlichen Schlüssels anzeigen, kann jemand, der Ihnen eine Nachricht sendet, sicherer sein, dass er den richtigen öffentlichen Schlüssel herunterlädt.
Sie können den Fingerabdruck Ihrer Schlüssel mit diesem Befehl sehen:
gpg --fingerprint KEY_email
Bei den meisten dieser Befehle funktioniert manchmal eine E-Mail, manchmal braucht es die genaue KEY_ID. Sie können immer sehen, was Ihre KEY_ID ist mit:
gpg --list-keys
Sobald Sie Ihren Fingerabdruck sehen, kopieren Sie ihn und fügen Sie ihn in Ihre Online-Profile ein, wie ich es auf Twitter getan habe:
Wenn Sie meinen öffentlichen Schlüssel herunterladen, wird der Fingerabdruck angezeigt, nachdem Sie ihn importiert haben oder wenn Sie den Befehl „–list-keys“ oder „gpg –fingerprint Key_ID“ verwenden.
Sie können dann die Ausgabe mit meinem Online-Profil überprüfen, um sicherzustellen, dass Sie den richtigen Schlüssel haben.
Senden Sie mir eine mit meinem öffentlichen Schlüssel verschlüsselte Nachricht, und ich werde mit Ihrem öffentlichen Schlüssel verschlüsseln
Zuerst müssen Sie meinen öffentlichen Schlüssel erhalten. Sie können zu keyserver.ubuntu.com
navigieren und meine E-Mail-Adresse in das Suchfeld eingeben:
Oder besuchen Sie meine Kontakt-/GPG-Seite und folgen Sie dort den Anweisungen
Kopieren Sie meine Key_ID in die Zwischenablage. Öffnen Sie ein Terminal und geben Sie diesen Befehl ein:
gpg --keyserver keyserver.ubuntu.com --recv-keys e7c061d4c5e5bc98
Sie haben jetzt meinen öffentlichen Schlüssel in den Schlüsselbund Ihres Computers importiert.
Jetzt können Sie mir einen Brief in eine Textdatei (letter.txt) oder ein Word-Dokument (eigentlich alles) schreiben und auf der Festplatte speichern. Navigieren Sie in einem Terminal zum Speicherort der Datei. Geben Sie dann diesen Befehl ein:
gpg --output letter.gpg --encrypt --recipient armantheparman@gmail.com letter.txt
Hier haben Sie einen Befehl, der in einer Zeile steht. Mit den „–output“-Optionen können Sie einen Dateinamen erstellen, der unmittelbar danach eingegeben wird, wo die verschlüsselten Daten abgelegt werden.
Die Option „–encrypt“ ist eine Anweisung zum Verschlüsseln.
Mit der Option „–receipient“ können Sie auswählen, welcher öffentliche Schlüssel in Ihrem Schlüsselbund zum Verschlüsseln der Nachricht verwendet werden soll. Wenn Sie direkt danach eine E-Mail-Adresse eingeben, wählt es den richtigen Schlüssel aus Ihrem Schlüsselbund aus.
Schließlich geben Sie nach der E-Mail oder Key_ID den Namen der Datei ein, die Sie verschlüsseln möchten.
Möglicherweise erhalten Sie einige Warnungen und Bestätigungsmeldungen, aber danach sollten Sie eine neue Datei mit dem Namen „letter.gpg“ oder einem beliebigen Dateinamen haben. Die Originaldatei existiert noch („letter.txt“). Sie können diese Datei löschen mit (Linux oder Mac):
rm letter.txt
Sie können den Verlauf der Eingabeaufforderung auch löschen mit:
history -c
Sie können dann eine E-Mail senden und „letter.gpg“ anhängen und an mich senden. Wenn die Nachricht erhalte, werde ich sie zuerst auf die Festplatte herunterladen und dann diesen Befehl verwenden, um die Datei zu entschlüsseln:
gpg --output decrypted_message.txt --decrypt letter.gpg
Dadurch wird eine neue Datei „decrypted_message.txt“ mit den verschlüsselten Daten aus „letter.gpg“ erstellt. Der Computer kann lesen, welcher öffentliche Schlüssel die Daten verschlüsselt hat (also muss ich keine Key_ID angeben), und er kann sehen, dass er den privaten Schlüssel zu diesem öffentlichen Schlüssel im Schlüsselbund hat, sodass er ihn zum Entschlüsseln der Nachricht verwenden kann.
Fazit
Ich habe Ihnen die Schritte gezeigt, die Sie unternehmen müssen, um einen privaten/öffentlichen Schlüssel für sich selbst zu erstellen, eine Nachricht mit MEINEM öffentlichen Schlüssel zu verschlüsseln und mir die Nachricht zu senden, die ich mit meinem privaten Schlüssel entschlüsseln werde.
Wenn Sie mir Ihren öffentlichen Schlüssel oder Anweisungen zum Abrufen senden, kann ich eine Nachricht verschlüsseln und Ihnen eine Nachricht senden, wenn Sie möchten.
Probieren Sie es aus!
Value 4 Value | Tips:
Wenn Ihnen diese Übersetzung gefallen hat, würde ich mich über eine Wertschätzung in Form von Satoshi an law@getalby.com freuen.
Sie können mir ausserdem auf Twitter folgen oder meine Homepage besuchen.
Nostr: npub1v5k43t905yz6lpr4crlgq2d99e7ahsehk27eex9mz7s3rhzvmesqum8rd9
Leon A. Wankum
Bitcoin. Real Estate. Philosophy & Ethics. ⚡law@getalby.com npub1v5k43t905yz6lpr4crlgq2d99e7ahsehk27eex9mz7s3rhzvmesqum8rd9
follow me :
Related Posts
Rabbit fragt #17
Aug 28, 2024
Der Bitcoiner in der Midlife-Crisis
Jun 14, 2024
Rabbit fragt...#16...Was ist eine Hardware Wallet?
May 26, 2024