Vor-/Nachteile/Einschränkungen von mnemonischen Phrasen - BIP39

BIP39-Mnemonikphrasen ersetzen Überlegungen zum Speichern eines privaten Schlüssels durch Überlegungen zum Speichern des Seeds in einer Reihe privater Schlüssel.

Die Idee ist, dass die privaten Schlüssel schwer zu merken, schlechter aufzuschreiben und bei digitaler Speicherung anfällig für Entdeckungen sind. Die Lösung besteht also darin, dass Sie einen Satz von Wörtern haben können, die als Keim für eine hierarchische deterministische Reihe von Adressen dienen.

Es scheint, als wäre diese Idee bei der Übersetzung verloren gegangen, da die Phrasenlänge von mnemonischen Phrasen von 12 Wörtern auf 24 Wörter gestiegen ist, wobei die „sicherer als du“ noch längere Wörter und Phrasen verwenden und sicherheitsbewusste Unternehmen gleichermaßen das Aufschreiben fördern die mnemonische Phrase, an mehreren Stellen.

oder die Phrase teilen oder eine zusätzliche Passphrase über die HD-Sequenz setzen oder Shamirs geheimen Schlüssel verwenden ...

All dies schafft einfach mehr Fehlerquellen.

Letztendlich: Anstatt dass eine Papiergeldbörse einen privaten Schlüssel kompromittiert, wird Ihre Papierphrase ALLE Ihre privaten Schlüssel kompromittieren. HOPPLA. oder Sie vergessen den geheimen Schlüssel, oder Sie verlieren einen Teil des Satzes, oder Sie schreiben ihn falsch

Zumindest können wir sicher sein, dass die Wörter selbst genug Entropie enthalten, um ein Raten zu verhindern, RICHTIG MENSCHEN? RECHTS?

Was sind die Vor- und Nachteile, Einschränkungen von BIP39 oder zumindest meine Bedenken? Ich habe das Wiki und den Github-Markdown zu BIP39 gelesen, und diese tragen nicht dazu bei, diese Bedenken auszuräumen, da diese BIPs ein zentralisierter Prozess sind

Antworten (3)

um den ersten Teil zu beantworten;

Im Allgemeinen möchten die Leute ihre gesamte Brieftasche sichern, nicht bestimmte PKs. Wenn Sie also eine HD-Brieftasche verwenden und ein Backup des Seeds erstellen (entweder der Seed oder eine BIP39-Mnemonik spielt keine Rolle), entspricht dies dem, was Leute mit "normalen" Wallets tun. Sie sichern Ihr gesamtes Wallet an einem Ort (die meisten Wallets haben ein Backup / Exportdatei für das gesamte Wallet).

BIP32 - HD Wallets - (und BIP39) soll nicht ersetzen, dass Sie Ihre Backups in mehrere verstreute private Schlüssel aufteilen können, es ersetzt eine einzelne Brieftasche, die auf "traditionelle" Weise gesichert wird, 1 Datei (oder Ausdruck) für den ganzen Geldbeutel.

Auch eine BIP39-Papiersicherung hat die gleichen Probleme wie normale Sicherungen privater Schlüssel, die Sie erwähnen, wenn Sie die Passphrase verlieren oder falsch schreiben ... sie ist weg ...

Aber wenn Sie das Risiko verteilen möchten, indem Sie Ihre Bitcoins auf mehrere Backups aufteilen, sollten Sie einfach mehrere Wallets haben, um sie aufzuteilen.

BIP39 ist auch nur der Prozess der Umwandlung eines Seeds in Mnemonik und zurück, Ihre (oben diskutierten) Bedenken betreffen eigentlich HD-Wallets im Allgemeinen, was BIP32 ist ;-)

Jetzt gilt Ihre einzige wirkliche Sorge in Bezug auf BIP39 den Wörtern, die genügend Entropie enthalten! und das tun sie, weil die Wörter zunächst aus einer 128- oder 256-Bit-Entropie generiert werden, wird die Hex-Entropie in 11er-Blöcke aufgeteilt, was bedeutet, dass Sie als Ergebnis eine Liste von 0-2047-Ganzzahlen haben. Diese Liste von ganzen Zahlen wird in die Wörter übersetzt (und zurück in die Hexadezimalzahl und in die binäre Entropie, wenn Sie sie verwenden).

Lassen Sie mich das demonstrieren, indem ich Ihnen zeige, wie einer der offiziellen Testvektoren konvertiert wird:

Hex der Entropie: 7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f7f

Bits der Entropie: 011111110111111101111111011111110111111101111111011111110111111101111111011111110111111110111111101111111011111111011111.101.101.101

aufgeteilt in 11 Längenteile: [0] => 01111111011 [1] => 11111011111 [2] => 11011111110 [3] => 11111110111 [4] => 11110111111 [5] => 10111111101 [6] => 11111101111 [7 ] => 11101111111 [8] => 01111111011 [9] => 11111011111 [10] => 11011111110 [11] => 11111111000

Diese Teile wurden mithilfe der Standardwortliste in Wörter umgewandelt: legaler Gewinner danke Jahr Welle Wurst wert nützlich legaler Gewinner danke Gelb

die Mnemonik zusammen mit dem Passwort TREZOR umgewandelt in ein Seed-Hex: 2e8905819b8723fe2c1d161860e5ee1830318dbf49a83bd451cfb8440c28bd6fa457fe1296106559a3c80937a1c1069be3a3a5bd381ee626

Jetzt ist der coole Teil tatsächlich, dass wenn Sie ein anderes Passwort mit derselben Mnemonik verwenden, Sie einen anderen Seed und damit eine andere Brieftasche erhalten, Sie könnten 2 Brieftaschen haben und wenn Sie ausgeraubt werden, geben Sie nur die BTC in einer von ihnen ab ;-)

"BIP39 ist auch nur der Prozess der Konvertierung eines Seeds in eine mnemonische und zurück" - BIP39 verwendet Einweg-Hash, um den BIP32-Seed abzuleiten. Es gibt keinen Weg zurück.

Bitcoin-Explorer besteht die BIP-39-Testvektoren. Sehen Sie sich die Bitcoin-Explorer-Beispiele unten an, um die obigen Fragen zu beantworten.

1) echo "0" | bx base16-kodieren | bx sha256

effcce8fe9c6da7e1b50cccdfc082cdf8d1b135aed519bc27cfd5cacb16269d6

2) echo "effcce8f" | bx mnemonisch-neu

nützlicher Spielzeugsatz

3) echo "e9c6da7e" | bx mnemonisch-neu

Wahrheitszyklus Panik

4) echo "effcce8fe9c6da7e" | bx mnemonisch-neu

nützliches Spielzeug physische Squeeze-Horror-Krankheit

5) echo "effcce8fe9c6da7e1b50cccdfc082cdf8d1b135aed519bc27cfd5cacb16269d6" | bx mnemonisch-neu

nützliches spielzeug körperliches drücken entsetzen krankheit kapuze buch soziale theorie arktis probe spinne wiese hügel hübsch orange werden entlassen reich slam heben punkt bald

6) echo "effcce8fe9c6da7e1b50cccdfc082cdf8d1b135aed519bc27cfd5cacb16269d6" | bx mnemonic-new --language en

nützliches spielzeug körperliches drücken entsetzen krankheit kapuze buch soziale theorie arktis probe spinne wiese hügel hübsch orange werden entlassen reich slam heben punkt bald

7) echo "effcce8fe9c6da7e1b50cccdfc082cdf8d1b135aed519bc27cfd5cacb16269d6" | bx mnemonic-new --Sprache es

trozo tez opinar sauna honra dar hombre azafrán rubí talón amapola puré salvar mármol héroe pánico norma ascenso dátil posible ritmo perla otro ruptura

8) Echo "nützliches Spielzeug körperliches Quetschen Horrorkrankheit" | bx Mnemonik-zu-Seed

ab226a6e34d87c6a469cfca5d034d7c053ee6f5478bccb1589bc3b216759cb263cab74503471c2f44cbe3d5c06e1e1a774a3feb51a8dfdcc4dd4aece392802e2

9) Echo "nützliches Spielzeug physische Squeeze-Horror-Krankheit" | bx Mnemonik-zu-Seed -p TREZOR

a1e90b6de07f62e8e09268a138761e9a93296afa221fbefc7b4bcaefef71aac6d4a385af7a0ca34d96b275953d4bbd12d442d9738f1559c855f292e7a4a75daa

10) echo "nützliches spielzeug körperliches drücken entsetzen krankheit kapuze buch soziale theorie arktis probe spinne wiese hügel hübsch orange werden reich slam heben punkt bald" | bx Mnemonik-zu-Seed

4703dc4343298d2ea7ddfa5f60b8a359f87c73f356b7eb684596f15390e1d8f67e42c5b224765bf10a4ed3437d3fd6b6110edb2c235ec997b1d969693bc12d18

Frage: Welche bxBibliothek verwenden Sie - möglicherweise diese: github.com/libbitcoin/libbitcoin-explorer ?
Ja, das ist der Quellcode. Binärdateien sind unter github.com/libbitcoin/libbitcoin-explorer/wiki/Download-BX verfügbar .
Kannst du dir bitte mal die Diskrepanz anschauen? imgur.com/a/HDssr
Sieht so aus, als hätte die verwendete ausführbare Datei den Boost ohne icu verwendet . Untersuchen Sie install.sh für das Erstellen mit icu.
Zu beschäftigt, zu viele andere Projekte, es ist unwahrscheinlich, dass sie sich mit dem Kernproblem befassen.
Es ist die Ausgabe von echo "0". Diese erzeugen vier verschiedene Ergebnisse: "0", "00" 0 und 00. bx base-16 encode konvertiert beliebige Daten in base16..."Die binären Daten, die als Base16 kodiert werden sollen. Dies können Text oder beliebige andere Daten sein."
Jede Einschränkung, die sich aus einem Nicht-ICU-Build ergibt, würde als Fehlerausgabe wiedergegeben werden.

Ich glaube, dass der beste Weg, BIP39 zu betrachten, darin besteht, Portabilität für Ihre Schlüssel zu schaffen. Sie können sie dann von einem Wallet zum nächsten verschieben und/oder die Mnemonik auf verschiedene Arten sichern. Sie sind nicht an eine Brieftasche oder ein Sicherungssystem gebunden. Früher war das Sichern oder Verschieben Ihrer Schlüssel in eine andere Brieftasche eine mühsame Angelegenheit, die Sie Schlüssel für Schlüssel ausführen mussten. Die meisten Leute kümmerten sich nicht darum, und wenn ihre Festplatte ausfiel oder sie ihr Wallet-Passwort vergaßen, war im Grunde alles verloren.

Geht dies wirklich gegen Diebstahlrisiken vor? Nein. In einer idealen Welt hätten Sie eine zuverlässige Möglichkeit, Ihren Seed on the fly zu regenerieren und nur eine Eselsbrücke zu verwenden, um von einer Brieftasche zur anderen zu wechseln.

Diebstahlrisiken werden von anderen Systemen gehandhabt: Airgapping, Hinzufügen eines Passworts zu Ihrer Mnemonik, Aufdrucken von Mnemoniken auf Metall und Aufbewahren in einem Banktresor oder einem anderen zuverlässigen, physisch sicheren Speichersystem, Verwendung einer Hardware-Brieftasche usw.