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

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“

Aus jedem Private Key wird genau ein Public Key berechnet. Dieser Public Key kann in zwei verschiedenen Darstellungen angegeben werden (compressed, uncompressed). Je nachdem welche dieser beiden Darstellungen man als Basis für die Adresse verwendet, erhält man zwei unterschiedliche Adressen.

Bei den alten Legacy (1er) Adressen ist es noch zulässig, beide Typen zu verwenden. Aus jedem Private Key kann man also zwei 1er Adressen berechnen, für die er gültig ist.

Bei den aktuellen Native Segwit (bc1) Adressen ist nur noch die compressed Variante zulässig. Deshalb gibt es zu jedem Private Key genau eine Adresse.

3 „Gefällt mir“

enthaltene Stichworte:

  • Brainflayer: Brainwallet cracking tool
  • bloom filter
  • compressed / uncompressed
  • scan „the network“ V.S. scan transactions

Auch interessant:
https://estudiobitcoin.com/do-you-trust-your-seed-dont-generate-it-yourself/

Briwadnotiz (Alternative zur Brainwallet):

  • 12 Wörter aus BIP39 Generator solange Würfeln, bis man ein Muster erhält, welches „persönliche Referenzen“ enthält
  • persönliche Anpassung „customizing“: Ggf. einzelne Worte auswecheln (schlecht für Entropie, ich weiss; aber es ist ein Kompromiss)
  • irgendein nicht getauschtes Wort Zwangs-austauschen, am besten an beliebiger Stelle, damit Checksum wieder stimmt

Ergebnis: weitestgehend zufällige Wallet akzeptabler Entropie, jedoch „Customized“ und dadurch leichter merkbar.

→ kennt einer von Euch eine Software/Github, der zu 11 gegebenen Worten für das 12te Möglichkeiten (z.B. Drop-Down-Menü / ComboBox) anbietet, damit die BIP39 Checksum wieder stimmt? „Auto-Vervollständigen“ (möchte das Rad nicht neu erfinden)

1 „Gefällt mir“

Habe hier ein Python script:

In die Variable incomplete_mnemonic schreibst du deine 11 oder 23 Wörter rein. Dann einfach ausführen.

Das Modul installierst du mit

pip3 install mnemonic

Ich rate dir aber von einer DIY Mnemonic dringend ab. Lass es einfach und halte dich an den Standard.

2 „Gefällt mir“

Ab dem Post hier hatten wir es auch mal davon:

1 „Gefällt mir“

Da fällt mir nix mehr ein. Krass. Das funktioniert aus dem Stand! Respect!
@sutterseba Python-Gott!

Na guti!

Danke, sorry, ich möchte ja auch nicht immer die gleichen Sachen fragen und lesen…daher suche ich immer vor dem Posting…aber manchmal fehlen mir einfach die richtigen Suchworte. Danke für die krasse Hilfe.

Die nicht BIP39-konforme native Seedphrase der Electrum Wallet enthält zusätzliche Informationen in den 12 Wörtern eingebaut wie

  • Versionsnummer
  • Erkennung der Wallet-Art

grafik

  • geht das nicht auch zu Lasten der Entropie (=weniger Bits für Random-Seed nutzbar)? (Ich las mal auf der Electrum-Website, dass sie die inkludierten, zusätzlichen Informationen ggü. BIP39 als „Feature“ anpriesen)

Der Call me Ishmael Artikel lässt mir keine Ruhe.
Klar, in dem Artikel wird öffentlich zugänglicher Text direkt gehasht und daraus eine Wallet erstellt.
Mit einer Rainbow-Table (massenhaft vorgehashte Werte bekannter Texte/ Passwörter) kann dort schnell und automatisiert ein Abgleich stattfinden, sobald eine solche Adresse „live geht“.

Ich nehme jedoch einfach mal hier an, dass die Passphrase für einen solchen „Rainbow-Table“ Angriff nicht ganz so anfällig wäre, da eine solche Rainbow-Table für die jeweilige Mnemonic - selbst wenn der Angreifer die z.B. erfolgreich gestohlen hätte - erst einmal erstellen müsste.

Richtig, Brute Force Angriffe auf eine optionale Passphrase sind sehr teuer (d.h. viele Operationen um eine Passphrase abzusuchen).

Du kannst hier nichts effizient im Voraus berechnen da du immer die unbekannte Mnemonic als zweiten Faktor hast.

Natürlich vorausgesetzt dass die Mnemonic mit (gutem bzw. echtem) Zufall erzeugt wurde. Wenn du 23 mal abandon mit Passphrase abandon nutzt musst du trotzdem damit rechnen dass ein Bot auf diesen Adressen wartet.

1 „Gefällt mir“

Das ist das was ich hören wollte.

Ich bin auf der Suche nach der ultimativen Brainwallet, sprich ich würde eine 12-Wort Mnemonic nehmen (mehr passt nicht in meinen Kopf) und eine ähnlich lange (20 Zeichen ohne Sonderzeichen kommt in den Bereich von 128 Bit Entropie) Passphrase.

Use case wäre z.B. Vorbereitung auf Flucht und danach zeitweise ohne Strom/ Zugang zum Internet leben für eine gewisse Zeit…

Das ist auch völlig ausreichend.

Ich hoffe du machst das aber nur als zusätzlichen Schutz und hast deine Backups, sowohl Mnemonic als auch Passphrase, irgendwo noch schriftlich gesichert.

Aber auch nur wenn sie zufällig sind, und du wirst dir doch wohl kaum 20 random Zeichen merken, oder?

Vor allem wenn du die Passphrase nicht schriftlich sicherst wäre das extrem riskant.

1 „Gefällt mir“

Negativ, random kann ich mir nicht noch mehr merken. Es sind Anfangszeichen aus Texten einer kleinen, religiösen Randgruppe, die nicht groß veröffentlicht sind. Daher meine „Call me Ishmael“-Frage im Bezug auf Unterschied Verwendung als Seed <–V.S.–> Verwendung als Passphrase.
Wohl nicht so gut, wie? Dachte ich schon. Dann doch lieber Koordinaten, wa?

Aber zumindest mache ich die 12-Wort Mnemonic durch eine non-Random Passphrase nicht schlechter, oder?

Genau, alles was du mit der Passphrase machst ist „on top“. Wenn deine Passphrase also kompletter Schrott ist verlierst du immerhin keine Sicherheit (solange du nicht fahrlässig wirst weil du denkst mehr Sicherheit zu haben).

Das kannst du machen, aber du darfst dann nicht von einer Entropie im Bereich 100-128 bit ausgehen.

Benutzt du Wörter die Sinn ergeben und/oder sogar in ähnlicher Form in verbreiteten Schriften zu finden sind, kann deine Passphrase unter Umständen in wenigen Minuten bis Stunden gebrochen werden. → Dictionary attack - Wikipedia

Praktischerweise hast du jetzt sogar öffentlich in einem Forum verkündet wie man diesen Angriff am besten eingrenzt. :wink:

Kommt drauf an.

Passphrase „callmeishmael“ wäre sehr schlecht, aber sowas wie „ishmael_Stacking5at5z_110%!“ wäre gut und man kann sie sich einigermaßen merken.

Installier dir mal KeePassXC und spiel mit dem Passwort Generator etwas rum. Du siehst dann live eine Schätzung der Entropie und bekommst ein besseres Gefühl dafür.

2 „Gefällt mir“