Bitcoin – Offline-Verschlüsselung von Seed-Recovery-Phrasen

Jeder vernünftige Mensch, der in der Vergangenheit mit Bitcoin Profite sammeln durfte, wird irgendwann unweigerlich damit anfangen, sich um die sichere Aufbewahrung seiner Bitcoin zu bemühen. Bei Bitcoin geht es beim Thema Sicherheit primär darum, den Recovery Seed (normalerweise eine Liste mit 12 oder 24 englischen Wörtern) sicher zu speichern und vor jeglichem fremden Zugriff gesichert aufzubewahren.

Diese „Seed Recovery Phrase“ ermöglicht es Ihnen, Ihre Bitcoin wiederzuerlangen, falls der Zugang zur eigenen Wallet verloren geht, man sein Passwort vergessen hat oder ein Gerät, auf welchem sich die Wallet befindet, beschädigt wird.

Da jede Person, die irgendwie Zugang zu Ihrer 12 oder 24 Wörter „Seed-Phrase“ erhält, auf Ihre Bitcoin zugreifen und diese stehlen kann, sollten Sie diese natürlich entsprechend sicher aufbewahren.

Beispiel für eine 12-Wort „Seed Recovery Phrase“

Die meisten Menschen speichern ihre Seed-Sätze als Klartext (d. h. für jeden lesbar) z. B. auf einem Stück Papier oder auf einer Metallplatte. Das allein ist allerdings nicht unriskant. Was ist z. B., wenn ein Besucher ein Foto von Ihrem Satz macht und diesen dann online stellt? Was ist, wenn Sie Ihren Seed-Phrase-Satz verlieren oder er von jemandem gestohlen wird? In jedem Fall können Sie sicher davon ausgehen, dass Ihre Bitcoin für immer verschwunden sind.

In diesem Artikel beschreibe ich eine recht einfache und sehr interessante Methode, mit der Sie Ihre Seed-Phrase mittels eines Codes (auch als „Chiffre” bezeichnet) allein mit Stift und Papier in ein unlesbares Stück Text verwandeln können.

Selbst wenn jemand Ihre verdeckte Phrase herausfinden und kennen sollte, ist es höchst unwahrscheinlich, dass Ihre Bitcoin dann auch gestohlen werden. Die vorgestellte Methode ist auch nicht ausschließlich auf Bitcoin-Seed-Phrasen beschränkt, sondern kann auf jede Art von geheimer Information angewendet werden, die man verbergen möchte (z. B. Passwörter).

Verschlüsselung – Cäsar hat es damals schon getan. 

Der Prozess der Verschleierung von geheimen Informationen mittels einer Chiffre wird als Verschlüsselung bezeichnet. Die Geschichte der Verschlüsselung lässt sich bis zu den allerersten Zivilisationen zurückverfolgen. Eine der bekanntesten Verschlüsselungstechniken ist die so genannte Substitutions-Chiffre und wurde von Caesar für das Versenden vertraulicher Nachrichten an seine Truppen verwendet.

Bei einer Substitutions-Chiffre wird jeder Buchstabe durch einen anderen Buchstaben oder ein anderes Symbol ersetzt, um ein unlesbares Stück Text zu erzeugen. Caesar selbst verwendete eine Verschiebung von 3, was bedeutet, dass „A” als „D“ & „B” als „E” & „Z”; als „C” usw. verschlüsselt wurde.

Die folgende Tabelle zeigt eine feste Verschiebung von 3, die auf den Klartext „ATTACK THE ENEMY” angewendet wird. Die daraus resultierende verschlüsselte Nachricht wird auch als „Chiffretext”; bezeichnet.

Ein Bild, das Shoji enthält.
Automatisch generierte Beschreibung
Substitutions-Chiffre mit einer festen Verschiebung von 3

Wenn der Verschiebungsschlüssel dem beabsichtigten Empfänger bekannt ist, kann die geheime Nachricht leicht entziffert werden, indem jeder Buchstabe im Alphabet um 3 zurückgeschoben wird. Während das Verschieben der Buchstaben einer Nachricht mit einer konstanten Verschlüsselung sehr einfach zu implementieren und auch zu merken ist, ist es aber durch die Einfachheit nicht sehr sicher.

Wenn z. B. bekannt ist, dass eine feste Verschiebungschiffre verwendet wurde, der Schlüssel selbst aber unbekannt ist, dann ist es recht einfach, den Code zu knacken, indem man einfach versucht, die Buchstaben zurückzuschieben, indem man alle 25 möglichen Schlüssel nacheinander versucht (wobei die Identitätszuordnungen 0 und 26 ignoriert werden), bis man einen Klartext erhält, der Sinn macht.

Es ist unwahrscheinlich, dass zwei verschiedene Verschlüsselungen einen zweiten Klartext erzeugen, der Sinn macht. Hervorzuheben ist, dass die Anzahl der Versuche, den Code zu knacken, unabhängig von der Nachrichtenlänge ist.

Bitcoin Seed Verschlüsselung – Können wir es besser machen?

Ja, das können wir. Anstatt jeden Buchstaben mit einer konstanten Verschlüsselung zu verschieben, könnten wir jeden Buchstaben mit einer anderen Verschlüsselung im Bereich von 0 bis 99 verschieben. Ein Beispiel folgt unten (eine einfache Möglichkeit, Buchstaben zu verschieben, wird in einem späteren Kapitel vorgestellt):

Ein Bild, das Shoji enthält.
Automatisch generierte Beschreibung
Substitutions-Chiffre mit variablen Verschlüsselungen

Statt 25 Lösungsmöglichkeiten für die gesamte Nachricht haben wir nun 25 Lösungsmöglichkeiten für einen einzelnen Buchstaben (26 inklusive Identity Mapping). Für eine Nachricht der Länge 𝑛 impliziert dies 26 ^ n mögliche Lösungen (beachten Sie, dass dies ständige Verschiebungen und das Identity Mapping als Sonderfälle beinhaltet, die wir der Einfachheit halber bewusst nicht anpassen).

Für unser Beispiel mit 14 Buchstaben bedeutet dies 26 ^ 14, dies entspricht 6.5 𝑥 10 ^ 19 möglichen Lösungen. Zum Vergleich: Das ist etwa das 8-Milliardenfache der heutigen Weltbevölkerung (ca. 8 Milliarden).

Natürlich wird es viele Botschaften geben, die man recht schnell ausschließen kann, weil sie nicht aussagekräftig sind. Gleichzeitig wird es auch viele 14 Wörter Nachrichten geben, die sinnvoll sind und sogar widersprüchliche Bedeutungen haben können. Zum Beispiel könnte „Wait with Attack ” eine mögliche Lösung sein, nicht nur für unser spezifisches Beispiel, sondern für jede beliebige Zeichenfolge mit 14 Buchstaben:

Eine mögliche Lösung für eine Nachricht mit 14 Buchstaben

Die Tatsache, dass es keine 100 % eindeutig identifizierbare Lösung gibt, schreckt von einem „Brute-Force-Ansatz“ ab. Die einzige Möglichkeit, die Nachricht zu entziffern, ist der Zugriff auf die Verschiebungsschlüsselsequenz.

Verschlüsselung via Generierung einer Folge von Zufallszahlen 

Die Frage, die sich in diesem Stadium stellt, ist, wie man sich eine so lange Zahlenfolge merken kann. Einige Leute können sich nicht einmal an ihre eigene Telefonnummer mit weniger als 15 Ziffern erinnern, wie können wir also erwarten, dass sie sich an eine Zeichenfolge von mehr als 100 Nummern, z. B. im Falle eines „24-Wort Seed Recovery Satzes“ erinnern?

Der Trick hier ist, diese wichtige Zahlenfolge aus einer leicht zu merkenden mathematischen Konstante bzw. einem Ausdruck abzuleiten. Anstatt sich also an die Zahlenfolge selbst zu erinnern, müssen Sie sich nur an die mathematische Konstante oder den Ausdruck erinnern, die sie erzeugt hat. Ich will Ihnen ein Beispiel geben. Betrachten Sie die berühmte mathematische Konstante 𝜋 = 3,1415926 . . .

Sie hat eine unendliche dezimale Darstellung und die Ziffern 0 bis 9 erscheinen in einer zufälligen Reihenfolge ohne wiederholbares Muster (Zahlen, die diese Eigenschaften haben, werden als irrationale Zahlen bezeichnet; andere gängige Beispiele für irrationale Zahlen sind 𝑒 = 2,7182818 . . . , das ist die mathematische Konstante, deren natürlicher Logarithmus gleich eins ist, oder Quadratwurzeln wie √2 = 1,4142135 . . . ).

Quelle: Wikipedia. Die mathematische Konstante 𝜋 ist eine irrationale Zahl mit einer unendlichen dezimalen Darstellung.

Definieren wir die erste Dezimalstelle als Startpunkt unserer Schaltsequenz und kombinieren wir zwei Stellen um einen Verschiebungsschlüssel zu bilden. Durch die Nutzung von 𝜋 erhalten wir folgende Verschiebungschiffre und den folgenden Chiffretext:

Ein Bild, das Shoji enthält.
Automatisch generierte Beschreibung
Substitutions-Chiffre, abgeleitet von der mathematischen Konstante 𝜋

Beachten Sie, dass Sie sich nur daran erinnern müssen, dass Sie 𝜋 zur Ableitung der Schaltsequenz verwendet haben. Es ist wie eine PIN, die in Form einer mathematischen Konstante bzw. einem Ausdruck daherkommt. Die Sequenz selbst muss man sich nicht mehr merken. 𝜋, 𝑒 und √2 sind sehr einfache Varianten.

Sie könnten sie zwar durchaus zum Verschlüsseln Ihrer Daten verwenden, aber ein Angreifer, der diesen Artikel gelesen hat, könnte sie zuerst ausprobieren. Daher empfehle ich aus Sicherheitsgründen, kreativer zu sein und mathematische Standardoperationen wie Addition, Subtraktion, Multiplikation, Division, Potenzierung und andere bekannte Funktionen wie Quadratwurzel, sin/cos/tan oder Logarithmus in den mathematischen Ausdruck einzubeziehen.

Fünf Beispiele für komplexere Ausdrücke sind unten aufgeführt (benutzen Sie einen leistungsfähigen Online-Rechner wie „wolframalpha“, um mathematische Ausdrücke bis zu einer Genauigkeit von fast 2.000 Dezimalstellen auszuwerten, was für unsere Zwecke mehr als genug ist):

Fünf Beispiele für mathematische Ausdrücke und ihre Dezimalentwicklungen

Um die Stärke der vorgestellten Verschlüsselungstechnik zu demonstrieren, poste ich öffentlich einen verschlüsselten „12-Wort Seed Recovery Satz“, der zu 0,0105 BTC (ca. 100 $ zum Zeitpunkt des Schreibens) führt. Beachten Sie, dass es ausreichend ist, die ersten vier Buchstaben jedes Wortes der Seed-Phrase zu speichern (drei Buchstaben für Wörter mit drei Buchstaben): 

Verschlüsselter Satz zur „Seed Recovery“: ZQWWWFMWFWVDNTIWTBCNXAZNMIHBBRRBPDOLHPQHAWZNIRUBF

Sie können die Inhaberschaft der Adresse überprüfen, indem Sie den Anweisungen hier folgen und die untenstehenden Informationen verwenden.

Ohne die Kenntnis der Verschiebungschiffre ist es unmöglich, sie zu brechen. Die Tatsache, dass Sie Ihre Assets auch bei Verlust oder Diebstahl durch einfache Verschlüsselung schützen können, ist nur ein weiteres Beispiel, warum digitale Assets wie Bitcoin physischen Assets wie Gold oder Silber überlegen sind.

Verschlüsseln leicht gemacht

Das Schöne an der Substitutionstechnik ist, dass die „Recovery Seed Phrase“ verschlüsselt werden kann, ohne sie in einen Computer oder ein Telefon einzugeben. Besonders im Umgang mit Bitcoin ist dies entscheidend, um Hacks & Verluste zu vermeiden. Die mentale Durchführung der Verschiebung ist also möglich, kann aber (vor allem bei größeren Zahlen) mühsam und fehleranfällig sein.

Um den Verschiebungsprozess zu erleichtern, empfehle ich die Verwendung des von CRYPTOETCH zur Verfügung gestellten Krypto-Rades (hier als pdf herunterladen und ausdrucken).

Es besteht aus zwei Scheiben, eine für den äußeren Kreis mit den Buchstaben A-Z und eine für den inneren Kreis mit den Zahlen 0-99. Der Ersatzbuchstabe kann durch einfache Drehung gefunden werden. Um z. B. den Buchstaben „G” um 85 zu verschieben, navigieren Sie die Null (rotes Feld) auf „G”; und lesen Sie den Buchstaben ab, auf den 85 zeigt (in diesem Beispiel „N”;).

Um einen verschlüsselten Brief mit dem Krypto-Rad zu entschlüsseln, muss der Vorgang nur umgekehrt werden.

Das heißt, zeigen Sie auf den Wert des Verschiebungsschlüssels, sagen wir dieser Wert ist 85, durch eine weitere Rotation des äußeren Kreises, zeigen Sie auf den verschlüsselten Buchstaben, sagen wir „N”, der Buchstabe, auf den das rote Nullfeld zeigt („G”; in unserem Fall), ist der entschlüsselte Buchstabe. Zwei Beispiele werden im Folgenden dargestellt.

Zwei Beispiele, die das von CRYPTOETCH bereitgestellte Krypto-Rad verwenden, um den Verschiebungsprozess zu erleichtern.

Diskussion

In unserem obigen Beispiel haben wir die erste Dezimalstelle willkürlich als Startpunkt unserer Schaltsequenz definiert. Es ist nicht wirklich wichtig, wo Sie Ihre Sequenz beginnen. Sie können mit der zehnten oder zwanzigsten Dezimalstelle beginnen. Wichtig ist nur, dass Sie sich stets daran erinnern. Ich empfehle, die Dinge nicht zu kompliziert zu machen und die natürlichste Wahl zu treffen, die entweder die erste Zahl oder die erste Dezimalzahl ist.

Weiterhin haben wir auch eine Auswahl getroffen, wie viele Ziffern zu einem Verschiebungsschlüssel kombiniert werden sollen. Wir hätten jede einzelne Ziffer als einen Verschiebungsschlüssel wählen können. Dies würde jedoch den Schlüsselbereich auf 0-9 beschränken, was bedeutet, dass jeder Buchstabe nur durch 9 von 25 möglichen Buchstaben ersetzt werden kann (ohne Berücksichtigung der Identitätszuordnung). Zum Beispiel könnte  „A” nur nach „B“, „C” bis zu „J”, aber niemals nach „K”;, „P”; „Z”; oder „D” verschoben werden. Wenn ein Angreifer die Information hat, dass ein Schlüsselbereich von 0-9 verwendet wurde, kann dies die Menge der möglichen Lösungen erheblich einschränken und die Wahrscheinlichkeit erhöhen, dass Ihre geheimen Informationen aufgedeckt werden.

Ich persönlich empfehle die Kombination von zwei Ziffern, was den Schlüsselbereich auf 00-99 erweitert (wobei 00 einer 0, 01 einer 1, 02 einer 2 usw. entspricht). Das bedeutet, dass jeder Buchstabe durch jeden anderen Buchstaben des Alphabets ersetzt werden kann. Sie könnten sich zwar sicherlich dafür entscheiden, drei oder mehr Ziffern zu einem Verschiebungsschlüssel zu kombinieren, aber das macht Ihre Verschlüsselung nicht sicherer. Ich schlage vor, es einfach zu halten und mit zwei Ziffern zu arbeiten.

Auch schlage ich vor, einen Online-Rechner zur Auswertung von mathematischen Ausdrücken zu verwenden. Wenn Sie das tun, empfehle ich Ihnen dringend, die Browser-Historie anschließend zu löschen, um alle Spuren zu beseitigen. Wenn Sie immer noch Bedenken haben, Ihren mathematischen Ausdruck dem Internet auszusetzen, könnten Sie auch einen normalen Taschenrechner verwenden, der in der Regel eine Genauigkeit von 10-15 Stellen hat, und die Verschiebungssequenz durch Wiederholung der verfügbaren Dezimalentwicklung aufbauen.

Das Generieren einer Verschiebungssequenz mit Hilfe einer mathematischen Konstante oder einem Ausdruck ist nur eine Möglichkeit. Sie könnten es auch aus einem Satz aus Ihrem Lieblingsbuch ableiten. Dazu würden Sie jeden Buchstaben in eine Zahl umwandeln und diese als Ihre Umschaltchiffre verwenden. Zum Beispiel würde „HELLO”; in 8, 5, 12, 12, 20 übersetzt werden. Sie könnten den ganzen Ansatz noch einen Schritt weiter gehen und eine weitere Sicherheitsebene hinzufügen, indem Sie die verschlüsselte Nachricht noch einmal mit einer Permutationschiffre verschleiern.

Am Ende liegt es an Ihnen, wie Sie Ihre Verschlüsselungs-Chiffre generieren und wie viele Schichten der Verschleierung Sie anwenden. Das einzige, was zählt, ist, dass Sie sich daran erinnern, wie es abgeleitet wurde.

Ein wichtiger Ratschlag in Bezug auf die Speicherung: Speichern Sie niemals Ihre verschlüsselte „Seed Recovery Phrase“ zusammen mit dem Ausdruck, der die Verschlüsselungs-Chiffre generiert hat. Bewahren Sie sie an zwei verschiedenen Orten auf.

Fazit

Viele Menschen zögern, in Bitcoin einzusteigen, weil sie Angst haben, ihre eigenen Bitcoin und Finanzen zu verwalten. Sie fühlen sich nicht wohl mit dem Risiko, ihre Gelder aufgrund des unsicheren Umgangs mit ihren geheimen Schlüssel-Satz evtl. zu verlieren. Indem man den Menschen, welche mit Bitcoin arbeiten möchten, Werkzeuge und Methoden zur Verfügung stellt, welche ihnen helfen, ihre geheimen Schlüssel sicherer aufzubewahren, steigern wir gleichzeitig sicher die Akzeptanz von Bitcoin.

Die in diesem Artikel vorgestellte Technik zur Verschlüsselung Ihrer „Seed-Recovery-Phrase“, ist mein Beitrag zur Bitcoin-Mainstream-Adoption.

Falls Ihnen dieser Artikel gefallen hat, können Sie den Author unterstützen, indem Sie in seinem Online-Shop (https://cryptoetch.com/) ein CRYPTOETCH-Kit bestellen, das Sie mit allen Zutaten versorgt, die Sie benötigen, um Ihre verschlüsselten „Seed-Recovery-Phrases“ mittels einer chemischen Reaktion, die als „Ätzen” bekannt ist, in Stahl zu „brennen”.

Ein CRYPTOTECH-Kit ist ein günstiger Weg, Ihre „Seed-Recovery-Phrase“ auf Metall zu speichern und so vor Wasser und Feuer zu schützen. Ich wünsche viel Glück beim HODLn.

Im Original finden Sie diesen Artikel veröffentlicht von: Wladimir Weinbender, Gründer von CRYPTOETCH (https://cryptoetch.com/) in English hier: https://www.docdroid.net/JXYRJsG/190919-encryption-technique-article-vf.pdf

Schreibe einen Kommentar

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