Brainwallet: What3words statt BIP39 für Drachen (und andere Aussteiger oder Knackies)

Meddl Leute,
Cryptos sind das krasseste Geld, was man sich vorstellen kann, das wissen wir hier alle.

Ich habe mir letztens mal als Gedankenspiel vorgestellt, was ich machen würde, wenn ich wie ein gewisser Mittelfranke ins Gefängnis müsste und wie ich Werte abspeichern würde, wenn ich keine Freunde und keine Familie hätte. Beim Gefängnis müsste ich nackt hinein, könnte also nichts materielles, auch keinen USB-Stick mitnehmen.
Ungleich dem berühmten, fränkischen Entertainer würde ich natürlich keinen teuren Geländewagen kaufen und vor dem Gefängnis ins Parkhaus stellen, denn dass dieser irgendwann nen Parkticket bekommt, abgeschleppt wird oder einfach verrostet ist ja wohl jedem hier klar.

Aber wenn man absolut nichts mitnehmen könnte und es schnell gehen müsste, dann wäre doch eine Option viel persönliche Information in wenig Hirnspeicher lange Zeit zu hinterlegen Koordinaten von Orten (z.B. mehrere 3-Wort-Adressen wie in der Werbung des Anbieters „what3words“) oder ähnlich, z.B. einfach die zeitliche Abfolge von seinen Wohnorten.

  • wie seht ihr das?
  • Gibt es eine „Umrechnung“ des what3words-Codes zu BIP39 und vice versa?
1 „Gefällt mir“

Ich verstehe zwar nicht so ganz, was Dein Problem ist oder auf was Du Dich vorbereiten willst ( :stuck_out_tongue_winking_eye: ), aber abgesehen davon, haben what3words und BIP39 nichts miteinander zu tun. Außer der Grundidee, eine Wortliste als Matching-Tabelle für Zahlen zu verwenden. Eine Umrechung gibt es nicht und ich verstehe auch nicht, was das bringen soll. Sich eine Seed Phrase zu merken, dürfte schon die kompakteste Version sein.

Meines Wissens ist die Wortliste von what3words in vielen verschiedenen Sprachen verfügbar, aber sie ist Closed Source, also nicht öffentlich verfügbar. Man braucht immer die Apps oder API von what3words, um zwischen einer (unbekannten) Dreiwortadresse und Koordinaten hin- und herzurechnen. Das ist deren Geschäftsmodell.

3 „Gefällt mir“

Drei Wörter enthalten nicht genug Information, um daraus alle Möglichkeiten einer BIP39 24 Wort Seedphrase zu erhalten.

Man könnte aber dennoch über ein vorher festgelegtes Verfahren 24 Wörter aus den 3 Wörtern ableiten. Zum Beispiel könnte man die drei Wörter einfach mit SHA-256 hashen und das Ergebnis (256 Bits) als Basis für eine Seedphrase verwenden.

Genauso könnte man den sich ergebenden Hash auch direkt als Private Key für eine Bitcoin Adresse verwenden.

All das läuft unter dem Stichwort Brainwallet.

Im Allgemeinen ist das keine gute Idee, weil man die Sicherheit stark einschränkt. Alle Dreiwort-Kombination aus einer Liste mit den paar Tausend gängigsten Wörtern könnte man z.B. in praktikabler Zeit bruteforcen (Durchprobieren).

Es hat aber noch viele weitere Nachteile. Hierzu am besten Mal nach „Brainwallet“ suchen:

Suchergebnisse für „brainwallet“ - Blocktrainer Forum
Suchergebnisse für „brain wallet“ - Blocktrainer Forum

Hier hatten wir zuletzt über solch eine Sonderlösung diskutiert:

Cold Wallet - Neuling

Immer wieder lesenswert dazu ist auch dieser Artikel: Bitmex - Call me Ishmael

Dort wurden testweise Bitcoin Private Keys aus bekannten Zitaten und Buchausschnitten generiert und mit jeweils 0,005 BTC ausgestattet. Innerhalb von Sekunden waren diese alle weg.

6 „Gefällt mir“

Wow! Das Stichwort hilft mir schon weiter- Danke!

Na steht doch im Post drin…Haft wegen z.B. GEZ nicht gezahlt oder Impfung verweigert.
Oder halt für unbestimmte Zeit Totalausstieg (z.B. wie Hippies auf La Gomera in Felshöhlen leben oder Endzeit „Braut des Messias muss in die Wildniss fliehen“).

Das war ja nur ein Beispiel für einfach zu merkende „Brainwallet“; nicht einen, sondern z.B. 8 persönliche Orte in chronologischer Abfolge (what3words deiner letzten 8 Reisen/Wohnorte = 24 Worte); solange die Kontinentalplatten sich nicht zu sehr verschieben und Du kein Alzheimer bekommen hast, sollte diese höchst persönliche Information ja erhalten bleiben.

LOL, die haben nicht wirklich ne Wortliste genommen und das als lizenzpflichtiges Geschäftsmodell entwickelt, oder? :wink:

Ich werde nachher nochmal komplett lesen, aber das Problem hier scheint, dass die Information ggf. nicht persönlich genug ist, sondern aus öffentlich zugänglichen Büchern/ Liedern stammt.

1 „Gefällt mir“

Echt? Innerhalb von Sekunden? Jockeln denn sekündlich Leute alle möglichen Songs / Bücher durch, um an BTC zu gelangen und sind damit erfolgreich? Was ist, wenn ich noch eine „Optional Passphrase“ hinten anstelle?

Kennt ihr ein „BIP39“ Framework, um auf einem Offline-Rechner (z.B. Virtual Machine) ein wenig experimentieren zu können; am liebsten in C#?

Da hast du schon recht.

Als Beispiel: Wenn du zufällige 8 Wörter aus einer Liste mit ca. 8192 (= 2¹³) Wörtern verwendest, hättest du eine Entropie („Variantenreichtum“) von 104 Bit, was heute und die nächsten Jahre noch ausreichend wäre.

Aber sobald du deine letzten Reiseziele nimmst, wird es schon wieder einfacher deine Keys zu knacken. Vielleicht bist du nicht der einzige, der sich 8 Wörter aussucht, die in Zusammenhang stehen. Also z.B. 8 Namen, 8 Geburtstage oder 8 Reiseziele.

Solche zusammenhängenden Begriffe würde ein intelligenter Angreifer zuerst durchprobieren.

Besser wäre es also 8 zufällige Wörter zu verwenden, oder ein Passwort mit Sonderzeichen, was dann bei gleicher Entropie nur 15…20 Zeichen haben müsste.

Du verlierst aber wie schon erwähnt viele Vorteile eines Standards.

Die Keys und Adressen wurden alle schon berechnet und werden offensichtlich nur kontinuierlich gescannt. Sobald dann etwas gefunden wird, hat man den Key schon in einer Tabelle stehen.

Du kannst zum Spielen mit dem Tool anfangen: BIP39 - Mnemonic Code

Das ist allerdings nicht genau was du suchst. Außerdem solltest du dich sehr gut mit dem auskennen was du machst. Also z.B. wie die Hashfunktionen angewendet werden. Das kann schnell schief gehen, wenn du z.B. den falschen Datentyp verwendest.

1 „Gefällt mir“

Ich denke, da laufen „Bots“, die permanent die Blockchain bzw. sogar schon die eingehenden Transaktionen im Bitcoin Netzwerk nach solchen Adressen scannen, die von Leuten (die sich für besonders schlau halten) aus solchen Phrasen generiert wurden. Diese Adressen wurden vorab generiert und der Bot hat eine Liste, der kann also blitzschnell Milliarden solcher Adressen scannen.

2 „Gefällt mir“

:wink: …eine Art BIP39 Rainbow table LOL. Ja, das verstehe ich…

Ich nehme mal an, dass (als Beispiel) What3Words diese Worte so gewählt hat, dass wenig Redundanz in der Umrechnung Koordinate → W3W steckt, allerdings ist natürlich die unwarscheinliche Auswahl von Koordinaten von unbewohntem Gebiet (Ozeane, Aktis, Wüste) der „randomness“ nicht zuträglich…

Bei what3words wurde die gesamte Welt in Kacheln von 3x3m eingeteilt. Ich würde mich nicht darauf verlassen, dass in zehn Jahren bei Paris London Berlin Rom Madrid Prag ... immer noch die selben Dreiwortadressen rauskommen… :wink:
Außerdem, solange what3words nicht Open Source ist, bist Du davon abhängig.
Ich würde von solchen selbst-gebastelten Lösungen Abstand nehmen, Du stellst Dir selber ein Bein. Es haben schon zu viele Leute geglaubt, sie seien besonders schlau…

Das verstehe ich nicht ganz. Ein solcher Angreifer müsste mich persönlich gut kennen (Einwohnermeldeamt), aber wenn es solche Entitäten nicht gäbe oder es Orte wären, die nie gemeldet wurden und von denen ein potentieller Angreifer nicht weis, dann verstehe ich nicht in wieweit Orte in Zusammenhang stehen sollen. Ein Umzug von München nach Südfrankreich oder Reise nach Florida sind doch völlig zusammenhangslos, oder?

Ja klar, W3W ist durch Closed Source tabu, aber ich nahm es ja nur als Beispiel (wegen der Werbung die mir im Kopf blieb), aber es wäre ja kein Problem eine Open Source Variante zu erstellen, die als BIP ggf. sogar in den Bitcoin Standard aufgenommen werden könnte (oder ggf. schon ist und ich es nur nicht kenne), sprich: gibt 8 auf 3x3m gerundete Erd-Koordinaten ein und erhalte einen Seed

Wenn du 8 Wörter aus dem Wörterbuch verwendest gibt es einfach mehr mögliche Kombinationen, als wenn du nur 8 Reiseziele verwendest.

Klar, in dem Fall schon.

Wenn man aber, jetzt mal ganz blöd angenommen, wirklich „Paris London Berlin Rom Madrid Prag …“ verwenden würde, dann wäre das relativ unsicher.

„Nur 8 Reiseziele“:
Also, wenn ich das Tor vom Drachenlord eingebe erhalte ich ganz andere Wörter wie bei der direkt angrenzenden Bulldoghalle (3m Entfernung):

///befindlichen.ausgemustert.winzerin
///verschönerung.bussen.drin

Selbst bei diesem (zugegebenermaßen schlechten, weil direkt angrenzenden und noch dazu „berühmten“) worst-case Trivialfall bekomme ich 6 Wörter die komplett verschieden sind und (für einen Aussenstehenden) nicht korrelieren, wenn „entsprechend gewählt“.

Also wenn Du schon irgendwas basierend auf Orten basteln willst, würde ich eher sowas wie Google Plus Codes (aka Open Location Code) nehmen.

1 „Gefällt mir“

Ich muss ehrlich sagen, dass ich von What3words keine Ahnung habe.

Meine ganzen Aussagen beziehen sich einfach nur auf mehrere Wörter, aus denen dann ein Private Key berechnet wird.

Das heißt du gibst Koordinaten ein und die Seite spuckt dir 3 Wörter aus?

Das ist zwar etwas anderes als ich jetzt dachte, macht es aber wie du sagst auch nur sicherer, falls du sehr sehr ungewöhnliche Koordinaten verwendest.

Aber selbst dann bist du von der Firma, deren Website, der Sicherheit deines PCs und deiner Verbindung abhängig? Wenn ich das richtig verstehe…
Gut, man könnte die ganze Website kopieren, nur auf einem frischen Offline-PC verwenden und den nachher platt machen.

Also wenn ich so etwas vorhätte wie du oder vielleicht auch der Drachenlord, würde ich entweder direkt meine 24 Wörter, einen langen Satz oder ein langes Passwort auswendig lernen.

…genau so ein „Milgram Experiment“ möchte ich eigentlich vermeiden…

Reisen und Orte und deren zeitliche Abfolge bleiben im Kopf - zumindest solange man einen guten Orientierungssinn hat - weil diese einen persönlichen Sinn ergeben.

  • und eine interaktive Weltkarte wie Google Earth wirkt technisch unterstützend für den Menschen mit legitimen Zugriff auf die Coins - auch nach Jahren, wenn die Gebäude nicht mehr stehen - durch die History-Funktion von Google Earth oder ähnlicher Dienste

…vergiss die Firma. So etwas könnte ja völlig problemlos auch Open Source Standard werden. Die Intelligenz steckt ja hier in der „randomness“ der Koordinaten bei gleichzeitig starkem, persönlichen Bezug und nicht darin, diesen Koordinaten lustige Namen zu geben…

Stimmt, du kannst du Koordinaten natürlich auch selbst hashen. Musst dir nur merken in welchem Format. :grin:

Und natürlich alles offline, nachher platt machen etc. .

Also ich könnte mir niemals vorstellen, das zum Standard zu machen. Ich kann mir nicht vorstellen, dass Milliarden Menschen alle unterschiedliche Orte auswählen würden. Außerdem müsste entweder die Koordinatenauflösung sehr hoch sein, um eine ausreichende Vielfalt zu erreichen. Oder man bräuchte mehrere Orte.

Breite und Länge in jeweils Grad(°), Minuten(′), Sekunden(″) und zwei Nachkommastellen für einen Ort würde lange nicht reichen. Man bräuchte Pi mal Daumen fünfmal so viele Stellen, um dem BIP39 ebenbürtig zu sein. Oder eben 5 Orte mit solchen Koordinaten.

Natürlich ist die Stellenanzahl also bei 8 Orten ausreichend. Aber mir wäre das zu heikel (Format, Genauigkeit, Robustheit, unterschiedliche Orte etc.) und ich sehe den Vorteil noch nicht so ganz.

Bei einer einzelnen Brainwallet und Orten, die vermutlich keiner kennt, ist das was anderes.

1 „Gefällt mir“

MEGA Artikel! Danke
Genau mein Use case

1 „Gefällt mir“

Ja genau

Eben, wenn er dann nach 20 Jahren aus dem Gulag kommt, ist es fraglich, ob er sein selbst-gebasteltes System und den Code dazu genau so wieder replizieren kann… :stuck_out_tongue_winking_eye:

Genau so soll man es nicht machen :wink:

Ist mir klar, es wird ja auch bei „Call me Ishmael“ herausgestellt warum:

  • auf Grund der öffentlichen Zugänglichkeit der verwendeten Information hat der Computer des Angreifers ja einen Vorteil gegenüber deinem Gehirn. (Wobei ich nicht ganz verstanden habe, was der Artikel mit „compressed“ VS. „uncompressed“ meint) @skyrmion

Dieses ungleiche Kräfteverhältnis (Hashrate Mensch VS. Computer ggf. mit Rainbowtable) für eine Brainwallet kann also nur zu Gunsten des Menschen gedreht werden, wenn die zu Grunde liegende Information höchst persönlich ist und der Informationsgehalt gut auf das menschliche Gehirn abgestimmt ist und dennoch informationstechnisch eindeutig und reproduzierbar ist.
Dies dürfte bei GPS-Koordinaten in zeitlicher Abfolge von Orten in deinem Leben im Gegensatz zu Bibelstellen oder Liedern oder gar starken Passwörtern sehr wohl der Fall sein - besonders dann, wenn Du viel und weit gereist bist - und Hilfsmittel GPS-Empfänger/ digitale Karten zur Verfügung stehen.

Der Artikel rät kurioserweise für diesen „Extremfall“ / Lebenssituation Flucht/ Exodus ohne pers. Gegenstände zu dem, wovon Bitcoiner wie Blocktrainer immer von abraten:

  • digitales Ablegen des (regulär erzeugten) non-Brainwallet-Keys auf privatem Bereich im Internet, z.B. verschlüsseltes Keepass-file in verschlüsseltem Archiv auf persönlicher Dropbox
  • mit dem Nachteil, dass es im Fall Drachenlord wohl nicht ginge, denn ein normaler Dropbox/Mail account wird meist nach Monaten Inaktivität oder Zahlungsverzug gelöscht, was fatal ist, wenn man ohne Internetzugang in der Wildnis oder im Gefängnis sitzt

three of the deposits were swept away before our transaction even got confirmed into the blockchain.

LOL

In one case, an independently run Bitcoin node witnessed the transaction sweeping away funds occur just 0.670 seconds after it saw the original transaction enter its memory pool.

Mhmm, die Idee mit dem Köder auslegen zur Prüfung der Adresse gefällt mir.

1 „Gefällt mir“