Wie schwer ist es, einen Seed zu hacken?

Hi!

Wenn ich das richtig verstanden habe, gibt es für die Seedphrase nur einen bestimmten, begrenzten Wörter-Pool. Ich verstehe, dass es viele mögliche Kombination von Wörtern aus diesem Pool geben kann und dass es unwahrscheinlich ist, eine Seedphrase zu erraten.

Aber: Je mehr Nutzer es gibt, desto mehr Wallets gibt es. Kann es passieren, dass zum Beispiel jemand (meinetwegen auch per Computerprogramm) Seed-Kombinationen schlicht ausprobiert, so lange, bis eine Wallet gefunden ist, die dann „wiederherstellen“ und die Coins klauen?

Wenn das ein Problem wäre, wäre Bitcoin schon längst gehackt worden. Ist doch logisch

Das wird permanent probiert. Wortkombinationen die irgendeinen Sinn ergeben oder aus bekannten Büchern stammen oder sonst irgend einer simplen Logik entspringen, sind sofort leergeräumt.

Aber die Anzahl der Möglichkeiten ist so unvorstellbar groß, dass echt zufällige Kombination mit einer Wahrscheinlichkeit nahe Null gefunden werden können.

Also theoretisch möglich, praktisch nicht :sunglasses:

1 „Gefällt mir“

Jedes der 2048 Wörter codiert 11 Bits des Seeds und z.B. die 24 Mnemonic Seed Wörter ergeben einen 256Bit Seed und eine Prüfsumme, so daß sich das letzte Wort nicht ganz frei ergibt.
Bei einem 256Bit Seed hast du 2^256 Möglichkeiten die Bits anzuordnen, das sind so viele: 115792089237316195423570985008687907853269984665640564039457584007913129639936

Wie @kyrneh schon schrieb, ist die Wahrscheinlichkeit einen Seed oder auch einen Private Key mit Coins zu erraten/finden sehr sehr … sehr nahe bei Null, sofern die 256Bits zufällig gewählt wurden.

Man wählt auch nicht zuerst die Wörter irgendwie aus, sondern in der Regel ist zuerst eine große zufällige Bitfolge (128Bit = 12 Wörter, 256Bit = 24 Wörter üblicherweise) da, die dann in die für Menschen besser dokumentierbaren Mnemonic Seed Wörter kodiert werden.

Wer zuerst die Wörter nach irgendwelchen menschlichen Neigungen auswählt, erzeugt daraus in der Regel einen „schlechten“ Seed, einen der „schwächer“ ist, als bei einer zufälligen Bitfolge.

4 „Gefällt mir“

Wir haben leider eine sehr schlechte Vorstellungskraft davon, wie groß diese Zahlen sind.
Hier zwei Videos, die das sehr anschaulich darstellen:

Can Someone Guess My Crypto Private Key? [From Sand, to Molecules, to the Observable Universe] - YouTube

How secure is 256 bit security? - YouTube

5 „Gefällt mir“

Das zweite ist wirklich super! Das habe ich selber schon seit kurzem in meiner Liste gespeichert, wenn ich jemandem die Menge an möglichen Kombinationen klar machen möchte.
:+1:

2 „Gefällt mir“

Die Wörter habe ich mir noch bei keiner Wallet selbst ausgesucht. Die werden mir einfach so präsentiert. Keine Ahnung wo die immer herkommen…

Bei der Bitbox soll es irgendwie gehen, die zu würfeln. Muss ich mich mal mit befassen. Lightning Wallet Apps haben manchmal gar keinen Seed.

Danke jedenfalls für die Antworten. Das macht mich schon viel schlauer, auch wenn ichs noch nicht ganz kapiere. Ich arbeite dran. :smiley::heart:

Wenn du einer Wallet-Software/Hardware sagst: mach’ mir eine neue Wallet mit einem neuen Mnemonic Seed (der Einfachheit halber mit 24 Wörtern), dann passiert im Verborgenen folgendes:

  1. Es wird eine 256Bit große zufällige Bitfolge erzeugt (wie ist zunächst unwichtig; so zufällig wie möglich ist dagegen wichtig), das ist der Seed (noch nicht der Mnemonic Seed).
  2. Die Bitfolge des Seeds wird in 11Bit-Häppchen aufgeteilt. Das geht 23x ohne Rest, übrig bleiben die letzten 3Bit der Seed-Bitfolge. Diese 3Bit und 8Bit eines Hashes des Seeds (zusammen 11Bit) sind dann das 24. Mnemonic Seed Wort. 11Bit können Zahlen von 0…2047 darstellen. Jedes 11Bit-Häppchen ist quasi ein Index in die BIP39-Wortliste, wobei das allererste Wort den Index 0 hat, das letzte dann 2047.

Beim Würfeln eines Seeds machst du im Grunde genommen nichts anderes, als durch mehrfaches Würfelrollen eines möglichst fairen Würfels eine 256Bit große Zufallszahl zu erzeugen. Jeder Wurf eines 6seitigen Würfels liefert log2(6)=~2,585 Bits (Shannon Entropy). Für einen 256Bit Seed musst du also 99x würfeln (wir vernachlässigen mal, daß 99x Würfeln „nur“ ~255,9 Bits Entropie liefern).

1 „Gefällt mir“

Siehe diese Threads:

Nächstes mal Suchfunktion nutzen, das Thema gab es auch schon gefühlt 2256 mal. :slight_smile:


Wie @Cricktor schon schreibt generiert deine Wallet eine 128 bit (12 Wörter) bzw. 256 bit (24 Wörter) lange Zufallszahl die dann direkt deiner Mnemonic, also den Wörtern entspricht.

Bei einer Hardware Wallet kommt dieser Zufall nicht irgendwo her, sondern hat mehrere voneinander unabhängige Quellen und ist damit besonders „gut“. Bei der BitBox02 setzt sich der Zufall bspw. zusammen aus:

  • Einem TRNG auf dem Secure Element
  • Einem TRNG auf dem Micro Controller
  • Eine für jede BitBox02 einzigartige Konstante die bei der Herstellung festgelegt wird
  • Zufall vom angeschlossenen Gerät
  • Hash des Gerätepassworts

Man spricht von „gutem Zufall“ wenn es schwierig bis praktisch unmöglich ist ihn zu rekonstruieren, er also (praktisch) echt zufällig ist. Es ist übrigens kein Problem falls eine dieser Zufallsquellen kompromittiert ist, das macht den resultierenden Zufall nicht schlechter.

Hier übrigens mal die Anzahl der möglichen Seedphrases (2256) als Zahl ausgeschrieben:

115792089237316195423570985008687907853269984665640564039457584007913129639936

Das wird aber bei der Vorstellung wahrscheinlich nicht viel helfen. Das oben verlinkte Video von 3Blue1Brown ist da definitiv besser.

2 „Gefällt mir“

Will mal jemand berechnen bis zu welchem Strompreis sich das lohnen würde, wenn man eine gewisse SAT Verteilung auf die Seeds zu Grunde legt? :wink:

Kurz, wird sich bei < 21 mio ₿ in den nächsten Jahren nicht lohnen

Das hat nichts mit dem Strompreis zu tun, da es sich nicht lohnen kann, es sei denn du bist unsterblich. Die Zeitfrage schlägt hier das Kostenargument komplett.

Das verlinkte Video hast du gesehen?

2 „Gefällt mir“

Ja ja ist mir alles bewusst, trotzdem würde mich ein Strompreis interessieren, einfach weil es lustig und absurd wäre. Aber wahrscheinlich hat eh keiner Bock das alles auszurechnen.

Für was denn? Damit es sich lohnt?

Das ist einfach zu beantworten: 0€. Aber selbst bei diesem Preis lohnt es sich nicht. :smiley:

Du brauchst schließlich auch die Hardware dafür. Selbst mit jeder Grafikkarte auf diesem Planeten wirst du kein Stück voran kommen.

Wenn ich wirklich einen Brute Force Angriff auf benutzte Wallets starten möchte, dann mache ich das über private Schlüssel und nicht über die Seedphrase. Das ist deutlich effizienter und der Suchraum ist kleiner. Aber was die 24 Wörter an geht musst du einfach die „Geht nischt“ Pille schlucken.