Spätestens seit das US-Finanzministerium ein Auge auf die digitale Währung Bitcoin geworfen hat, erfreuen sich "Brainwallets" wachsender Beliebtheit: Wenn sich der Schlüssel zum Geld nur noch im Kopf befindet, kommt auch kein Steuerprüfer dran.

Im anonymen Bitcoin-System wird Guthaben in "Wallets" gespeichert, die mit einem 256-stelligen Hash-Wert gesichert sind (SHA256), einem einzigartigen, privaten Schlüssel. Das Guthaben ist nur sicher, solange dessen Inhaber als Einziger das Kennwort kennt. Findet jemand anderes den Schlüssel heraus, kann er damit den virtuellen Geldbeutel importieren und das Guthaben selbst nutzen.

Einerseits sind diese Schlüssel aufgrund ihrer Komplexität, Länge und Erzeugung anhand von Zufallszahlen gut gegen Brute-Force-Angriffe geschützt. Andererseits sind die SHA256-Prüfsummen so komplex, dass sie sich kaum jemand merken kann. Brainwallets wollen das ändern: Hier liegt dem 256-stelligen Privatschlüssel kein Zufallswert zugrunde, sondern ein vom Erzeuger gewählter Satz (Passphrase).

Eigentlich sollte es selbstverständlich sein, dass diese Passphrase möglichst komplex ausfällt – und so ist es auch dokumentiert. Als Minimum gilt ein Satz mit zwölf Wörtern, der weder in einem Lied noch in der Literatur vorkommt. Die Realität sieht leider so aus, dass Anwender als Seed für ihren Private Key offenbar deutlich weniger Wörter verwenden. Der Online-Generator brainwallet.org regt sogar die Verwendung von nur vier Wörtern an, deren Vorgabe zu allem Überfluss einem Online-Comic entstammt.

Keine gute Idee: Ein Brainwallet, das auf eine ungenügend komplexe Passphrase zurückgeht, ist im Nu von Dritten geknackt.

Eine schwache Passphrase führt jedoch zu einem Private Key, der Brute-Force-Angriffen nicht lange standhält. Der britische Sicherheitsforscher Darren Martyn hat in seinem Blog als Proof-of-Concept ein Python-Skript veröffentlicht, das über Lexikon-Angriffe SHA256-Schlüssel erzeugt. Damit füttert man dann so lange einen lokalen Bitcoin-Client, bis dieser einen Wert als gültigen Zugang zu einem Wallet erkennt und die digitale Geldbörse importiert.

Menschen fällt es schwer, sich tatsächlich sichere Passwörter auszudenken. Mit mächtigen Algorithmen lassen sich auch auf den ersten Blick sicher erscheinende Zeichenfolgen mit vertretbarem Aufwand knacken. Selbst wenn man eine mindestens 12 Wörter lange Passphrase mit absichtlichen Rechtschreibfehlern verwendet, ist diese immer noch um ein Vielfaches leichter zu knacken als ein zufällig generierter SHA256-Hash.

Darren Martyn hält Brainwallets daher generell für eine "bad idea". Besonders gruselig findet er daran, dass man mit dem von ihm beschriebenen Ansatz nicht nur bestehende Bitcoins stehlen könne, sondern auch solche, die es aktuell noch gar nicht gebe. Sobald jemand eine bereits geknackte Passphrase benutzt, gehören die in der zugehörigen Wallet gespeicherten Bitcoins dem Angreifer. (ghi)