Können ASIC-Miner einfach verwendet werden, um Brainwallet-Passphrasen zu erraten?

Nachdem ich die Bitcoin-Wiki-Seite für Brainwallets gelesen habe, scheint es mir, dass Mining-Ausrüstung verwendet werden kann, um Brainwallet-Passphrasen brutal zu erzwingen. Ist das richtig?

„… so können Hacker kollektiv jede Sekunde mehrere Billionen von Passwörtern in der Privatsphäre ihres eigenen Zuhauses mit genau der gleichen Ausrüstung ausprobieren, die sie zum Schürfen von Bitcoins (im üblichen Sinne) verwenden.“

Wie würde man einen ASIC-Miner verwenden, um die Blockchain mit einem Wörterbuchangriff zu erzwingen? Wie würde die Anwendungslogik aussehen? Kann ein eigenständiger Miner (z. B. der Antminer S1) „ausgetrickst“ werden, zu glauben, dass er normale Arbeit für einen Pool verrichtet, wenn er eigentlich nur zufällige Zeichenfolgen hasht, oder würde er benutzerdefinierte Treiber benötigen?

Antworten (2)

Nein. Die meisten Brainwallets (unter der Annahme eines konventionelleren Brainwallets wie eines von brainwallet.org und kein Seed-basiertes) werden erstellt, indem eine Passphrase durch eine Runde von SHA256 geleitet wird. ASICs sind für zwei Runden ausgelegt.

Ja das ist, was ich dachte. Wir können also schlussfolgern, dass das Zitat aus dem bitcoin.it-Wiki tatsächlich falsch ist?
Unter der Annahme, dass das, was ich gesagt habe, richtig ist, sprechen sie wahrscheinlich über GPU/CPU-Mining. Laut bitcoin.it wurde der Artikel zuletzt im August 2012 aktualisiert. Ich glaube nicht, dass damals über ASICs viel nachgedacht wurde.
Alle Bitcoin-Mining-ASCIs, die mir bekannt sind, sind nicht in der Lage, beliebige Daten zu hashen, selbst mit Double-SHA256 - sie haben Bitcoin-Block-Hashing fest verdrahtet, damit sie die Nonce auf dem Chip brutal erzwingen können.
Ich dachte, Sie könnten es vielleicht für Strings zum Laufen bringen, die so lang wie ein Blockheader sind, aber dann nimmt ein optimaler ASIC-Chip technisch gesehen nur einen partiellen Blockheader als Eingabe (Schwierigkeit ist codiert) und gibt nur einen beliebigen Hash aus ( vielleicht sogar nur die Nonce) von etwas, das sich garantiert von der Eingabe unterscheidet, also ja ... Sie konnten nicht einmal den doppelten SHA256 der Zeichenfolge mit der richtigen Länge erhalten.

Was folgt, ist eine fundierte Vermutung, keine bestimmten Aussagen, und basiert auf Electrums Brainwallet-Phrasen (ich dachte nur, es wäre ein gutes Beispiel), nicht auf anderen Schemata oder von Menschen generierten.

Nein, ein Miner kann nicht leicht dazu verleitet werden (z. B. nur durch einen Schurkenpool), aber er kann so programmiert werden, dass er versucht, Brainwallet-Phrasen zu knacken. Dies liegt daran, dass gewöhnliches Hashing völlig andere Eingaben beinhaltet (ein Block-Header und Nonce, zweimal gehasht) als Brainwallet-Cracking (ein zufälliger 128-Bit-Seed, 100.000-mal gehasht).

Sie würden dies tun, indem Sie zufällige 128-Bit-Seeds durch den Algorithmus von Electrum ausprobieren, bei dem der Seed genommen und 100.000 SHA256-Hashes darauf ausgeführt werden (vielleicht würden einige andere Dinge, die ich vermisse, es schwieriger machen). Sie können dann ein paar weitere Berechnungen durchführen, um die Adressen zu ermitteln, die der Schlüssel generiert, und die Blockchain überprüfen, um festzustellen, ob eine davon übereinstimmt.

Die aktuelle Netzwerk-Hashrate beträgt ~50.000.000 GH/s. Wenn all dies stattdessen dazu verwendet würde, die Electrum-Schlüssel aller zu brechen, und alles, was dazu nötig ist, die 100.000 Hashes sind, würden 5 * 10 ^ 11 von 2 ^ 128 jede Sekunde überprüft. Sie könnten alle Schlüssel in etwa 2 * 10 ^ 19 Jahren oder dem 1,6 * 10 ^ 9-fachen Alter des Universums überprüfen. Während Sie wahrscheinlich lange vorher Kollisionen bekommen würden (abhängig davon, wie viele Electrum-generierte Adressen verwendet werden), denke ich, dass Ihnen dies eine Vorstellung von der Undurchführbarkeit dieser Art von Angriff gibt.

Vielen Dank für die gute Antwort - gut zu wissen, dass wir mit Electrum sicher sind.
Im Bitcoin.it Brainwallet-Wiki scheint das Beispiel jedoch nur ein SHA256 ("Passphrase") zu sein, um einen privaten Schlüssel zu generieren - ist das sinnvoll? Ist das Zitat "mit derselben Ausrüstung" sinnvoll? (Wie beim Ausführen von Milliarden von SHA256 (Wörterbuch [z. B. "korrekte Pferdebatterie-Heftklammer"]) - ähnlichen privaten Schlüsselgenerationen?)
Ja, ich denke, Sie könnten Ihrem Miner auch verschiedene gebräuchliche Phrasen/Wortkombinationen geben, die er mit diesem Schema ausprobieren kann. Sie müssten erraten, welche Phrasen und Schemata (z. B. einzelnes SHA256, doppeltes oder irgendetwas anderes, um eine 256-Bit-Nummer/einen privaten Schlüssel zu erfinden) sich die Leute wahrscheinlich einfallen lassen, damit es am effektivsten ist.