Der größte Bitcoin Bug letzten Monat war noch schlimmer, als die Entwickler zunächst vermuten ließen.
Der fatale Bug hätte Bitcoin wertlos gemacht
Die Bitcoin Welt wurde schon genug erschüttert, als berichtet wurde, dass die Schwachstelle dazu genutzt werden könnte, einen Teil des Netzwerks herunterzufahren. Während dies für viele schlecht genug klang, stellte sich heraus, dass die Entwickler von Bitcoin Core einen zweiten, größeren Teil des Bugs geheim hielten.
Wie in einem offiziellen Common Vulnerabilities and Exposures (CVE)(deutsch: häufige Sicherheitsrisiken und Sicherheitslücken)-Bericht offenbart wurde, hätte ein Angreifer damit tatsächlich neue Bitcoins erschaffen können – oberhalb des 21 Millionen Hardcaps.
Das hätte unweigerlich zu einem Überangebot und einem Vertrauensbruch in die Kryptowährung Bitcoin geführt. Man kann sich kaum ausmalen, wie schlimm wohl die Folgen für den Bitcoin Kurs gewesen wären. Er wäre wohl innerhalb weniger Tage gegen 0 gelaufen.
Ein schnelles Update der Software musste her
Aufgrund der katastrophalen Auswirkungen des Fehlers beschlossen die Entwickler, ihn geheim zu halten, indem sie sich Zeit nahmen, den Fehler zu beheben und Miner und Nutzer aufforderten, ihre Software zu aktualisieren.
Der CVE-Bericht von Bitcoin Core Entwicklern erklärt: „Um schnelle Upgrades zu erreichen, wurde beschlossen, die weniger schwerwiegende DoS-Schwachstelle sofort zu patchen und offenzulegen. Gleichzeitig sollten aber auch Miner, Unternehmen und andere betroffene Systeme erreicht werden, um die Veröffentlichung der gesamten Problematik zu verzögern. Damit hat man sich erhofft mehr Zeit für die Aktualisierung der Systeme zu gewinnen.“
Der Plan schien funktioniert zu haben.
Mehr als die Hälfte der Mining Hash Rate von Bitcoin wurde auf die gepatchte Softwareversion aktualisiert, was bedeutet, dass der Angriff nicht mehr verwendet werden kann. Die Entwickler „haben keine Informationen darüber, dass es Versuche gab, diese Schwachstelle auszunutzen“, heißt es im Bericht.
Der Bug wurde erstmal geheim gehalten
Einen so schwerwiegenden Fehler zu finden, war für die Entwickler eine stressige Situation.
Dem Bericht zufolge hat ein anonymer Benutzer ursprünglich über den DoS-Bug den leitenden Entwickler von Bitcoin Core und Bitcoin ABC informiert. Das stellt die wichtigste Software-Implementierung von Bitcoin Cash dar. Etwa zwei Stunden später erkannten Chaincode-Ingenieur und Bitcoin Core-Entwickler Matt Corallo, dass der Fehler genutzt werden konnte, um unbegrenzt Bitcoin zu drucken.
Aufgrund der Schwere der Schwachstelle beschlossen die Entwickler, diese Details zunächst geheim zu halten.
Stattdessen, beginnend mit Slush Pool, begannen sie die Miner zum Upgrade zu bewegen. Dieser Aufruf galt auch den Full-Node Betreibern der Bitcoin Blockchain.
„Sie sollten keine andere Version von Bitcoin Core als 0.16.3 ausführen. Ältere Versionen sollten nicht im Netzwerk vorhanden sein. Wenn Sie jemanden kennen, der eine ältere Version verwendet, sagen Sie ihm, dass er sie so schnell wie möglich aktualisieren soll“, äußerte Bitcoin-Subreddit-Moderator Theymos in einem Beitrag, der zu diesem Zeitpunkt an die Spitze des Forums gesetzt wurde.
Es hätten Transaktionen verloren gehen können
Es bestand noch ein weiteres Problem – die Möglichkeit eines Bitcoin Chain Split. Da die User nun verschiedene Versionen der Bitcoin Software verwenden, bestand die Gefahr, dass das Netzwerk vorübergehend in zwei Teile aufgeteilt wird und dann wieder zusammenkommt. Transaktionen in der Kette, in der die alte Software läuft, können also letztendlich verloren gehen.
Während die Situation genau beobachtet wird, hält Theymos das Risiko, dass dies geschieht, für gering. Aber er argumentierte, dass die Leute immer noch Vorsichtsmaßnahmen treffen sollten, wie z.B. länger warten, um sicherzustellen, dass eine Bitcoin Transaktion tatsächlich verifiziert wird. Theymos fügte hinzu: „Für die nächste Woche sollten Sie bedenken, dass es eine kleine Möglichkeit gibt, dass jede Transaktion mit weniger als 200 Bestätigungen rückgängig gemacht wird.“
Fake Bitcoins vielleicht schon im Umlauf?
Was einige Benutzer jedoch noch im Kopf haben, ist die Frage, ob es möglich ist, dass der Fehler bereits ausgenutzt wurde. „Woher wissen wir, ob diese Schwachstelle nicht bereits ausgenutzt wurde und es jemanden da draußen gibt mit einem Haufen gefälschter Bitcoin?“ fragte ein Bitcoin-User.
Glücklicherweise erklärte der Bitcoin Core-Autor Pieter Wuille, dass Bitcoin-Anwender aufgrund der Stärke von Code inzwischen in der Lage gewesen wären, verdächtige Aktivitäten zu erkennen. Beim ersten Download überprüfen die Full Nodes jede Transaktion in der Geschichte von Bitcoin doppelt. Ein Knoten mit der neuen Software, 0.16.3, würde das Problem sofort erkennen.
Dennoch bleiben Fragen, was passiert wäre, wenn der Fehler nicht rechtzeitig erkannt worden wäre. Laut Theymos: „Selbst wenn der Fehler in vollem Umfang ausgenutzt worden wäre, wäre der theoretische Schaden an den gespeicherten Geldern zurückgefahren worden.“ Theymos fuhr fort, dass ein Rollback ähnlich sein würde wie beim sogenannten „Value Overflow Incident“ im Jahr 2010, bei dem 187 Milliarden Bitcoins aus dem Nichts entstanden sind, aber letztendlich zerstört wurden.
Dennoch, während Bitcoin Core, Litecoin und mehrere andere Kryptowährungen, die auf dem Code von Bitcoin Core basieren, einen Patch für den Exploit veröffentlicht haben, haben andere keinen – und könnten immer noch anfällig für den Inflationsfehler sein.