Die Faustregel ist nicht mehr anwendbar, und Personen, die große Transaktionen durchführen, müssen die Transaktionsrisiken in Echtzeit basierend auf dem aktuellen Mining-Ökosystem bewerten.
Verfasst von: Jameson Lopp, Cypherpunk Cogitations
Kompiliert von: aididiaojp.eth, Foresight News
Wenn Sie jemals Transaktionen im Bitcoin-Netzwerk getätigt haben, haben Sie möglicherweise erkannt, dass es riskant ist, unbestätigte (auch bekannt als Null-Bestätigungs) Transaktionen zu akzeptieren. Im Falle von unbestätigten Transaktionen ist der Bitcoin-Empfänger leicht anfällig für Race-Angriffe, Finney-Angriffe und 51%-Angriffe.
Wenn Sie mindestens eine Transaktionsbestätigung erhalten haben, sind Sie nicht mehr so anfällig für Race-Angriffe oder Finney-Angriffe. Jetzt geht es nur noch um Angriffe mit 51%. Was ist die Faustregel für die akzeptable Anzahl an Bestätigungen?
1 Bestätigung: Ausreichend für Zahlungen unter 1.000 USD.
3 Bestätigungen: Bei Zahlungen zwischen 1.000 und 10.000 USD verlangen die meisten Börsen 3 Einzahlung-Bestätigungen.
6 Bestätigungen: Für große Zahlungen zwischen 10.000 und 1.000.000 USD. Sechs Bestätigungen gelten als sicherer Standard.
10 Bestätigungen: Empfohlen für große Zahlungen über 1.000.000 USD.
Tiefenforschung
Natürlich ist Bitcoin nicht so einfach, und unsere sogenannten Bestätigungs-Faustregeln basieren nur auf Annahmen, über die wir nicht wirklich gesprochen haben.
Zum Beispiel basieren die oben aufgeführten Bestätigungsgrenzen der Faustregeln tatsächlich auf einem Angreifer mit einer globalen Hash-Rate von 10%, wobei in diesem Fall 6 Bestätigungen eine 99,99%ige Gewähr bieten, dass der Angreifer nicht in der Lage ist, eine größere Menge an historischen Aufzeichnungen im Blockchain-Netzwerk neu zu schreiben.
Aber diese Berechnungen (die im Whitepaper zu finden sind) wurden lange vor Mining-Pools und industriellen Mining durchgeführt, als es vernünftig war anzunehmen, dass es für jemanden schwierig wäre, mehr als 10% der globalen Hash-Rate zu besitzen. Seit 2011 sind zahlreiche Blockproduktionsentitäten (Mining-Pools) aufgetaucht, die weit über 10% der globalen Hash-Rate angesammelt haben. Zum Zeitpunkt des Schreibens gibt es 5 solcher Mining-Pools.
Quantifizierung des Echtzeitrisikos
Die Seiten 6 und 7 des Bitcoin-Whitepapers skizzieren, wie die Risiken, die Angreifern entstehen, die Blockchain nach einer bestimmten Anzahl von Transaktionsbestätigungen neu zu schreiben, berechnet werden.
Der Wettbewerb zwischen der ehrlichen Kette und der Angreiferkette kann als binomiale Zufallswanderung beschrieben werden. Ein erfolgreicher Vorfall ist, wenn die ehrliche Kette um einen Block verlängert wird, was ihren Vorsprung um 1 erhöht, während ein Fehlschlag bedeutet, dass die Kette des Angreifers um einen Block verlängert wird, was den Abstand um 1 verringert. Die Wahrscheinlichkeit, dass die Kette des Angreifers die ehrliche Kette einholt, ist ähnlich wie das Problem des Spielers, der bankrott geht. Einfach ausgedrückt: Die Erwartung, dass der Spieler (Angreifer) die meiste Zeit gewinnen kann, ist negativ, und je länger sie dieses Spiel mit negativem Erwartungswert spielen, desto geringer wird die Wahrscheinlichkeit, dass sie Gewinner werden.
Da wir annehmen, dass der Angreifer weniger als 50% der Netzwerk-Hash-Rate besitzt, sinkt die Wahrscheinlichkeit, dass der Angreifer aufholt, exponentiell, je mehr Blöcke er einholen muss. Je länger sich die Zeit zieht, desto ungünstiger ist es für den Angreifer; wenn er nicht frühzeitig mit Glück einen Sprint nach vorne macht, werden seine Chancen mit jedem Mal, dass er weiter zurückfällt, immer geringer. Die potenzielle Fortschrittswahrscheinlichkeit des Angreifers ähnelt der Poisson-Verteilung, da das gesamte Mining ein Poisson-Prozess ist, und daher folgen die erfolgreichen Ergebnisse dieser Verteilung.
Um die Wahrscheinlichkeit zu bestimmen, dass ein Angreifer die Blockchain von z Blöcken vorher neu schreiben kann, multiplizieren wir die Poisson-Dichte jeder Fortschrittsmenge, die der Angreifer erzielen kann, mit der Wahrscheinlichkeit, dass er diesen Punkt einholen kann, wobei:
p = Die Wahrscheinlichkeit, dass ein ehrlicher Miner den nächsten Block findet
q = Die Wahrscheinlichkeit, dass ein Angreifer den nächsten Block findet
z = Die Anzahl der Blöcke (Bestätigungen), die umorganisiert werden müssen
lambda = z * (q / p)
k = Eine ganze Zahl von 0 bis z

Dies ist keine interessante Berechnungsformel, daher scheint sie eine gute Wahl für Open-Source-Projekte zu sein.
Bestätigungsrisiko-Rechner
Ich habe das folgende Tool erstellt, das basierend auf den Mining-Pools mit den höchsten Hash-Raten dynamisch das aktuelle Risiko einer Kettenumorganisation berechnet (aus den nachfolgenden Wochen der abgebauten Blöcke). Natürlich können Sie jeden anderen Hash-Rate-Prozentsatz verwenden, um diesen Parameter zu überschreiben, sowie die Anzahl der erforderlichen Bestätigungen für die Risikobewertung zu erhalten.

Es ist jetzt leicht zu erkennen, dass, wenn wir eine 99,9%ige Wahrscheinlichkeit wollen, dass unsere Transaktionen nicht doppelt ausgegeben werden, die Anzahl der Bestätigungen drastisch zunimmt, wenn die Hash-Rate des Angreifers 50% erreicht.

Warum solltest du dich darum kümmern?
Zum Zeitpunkt des Schreibens hat Foundry 36% der globalen Hash-Rate, was bedeutet, dass wenn Sie Zahlungen nach 3 Bestätigungen akzeptieren, Foundry immer noch eine 49%ige Chance hat, die Blockchain neu zu schreiben und einen Doppel-Ausgabangriff zu initiieren.

Angenommen, der Angreifer hat 10% Hash-Rate, dann gewährleistet eine Faustregel von 6 Block-Bestätigungen, dass 99,99% keine Doppel-Ausgabe stattfindet, während jetzt 60 Transaktionsbestätigungen erforderlich sind, um dasselbe Vertrauensniveau zu erreichen.
Was die Praktikabilität dieses Angriffs betrifft: Mining-Pools haben sicherlich keinen Anreiz, Angriffe durchzuführen, da sie dadurch möglicherweise ein großes Geschäft verlieren könnten. Miner sind im Allgemeinen langfristige Inhaber, die nicht bereit sind, das Vertrauen der Menschen in das Ökosystem zu gefährden. Dennoch können Mining-Pools immer noch zu einem Single Point of Failure werden, und jemand könnte eine Schwachstelle ausnutzen, um einen Mining-Pool kurzfristig zu übernehmen. Ähnliche Situationen haben zuvor stattgefunden, wie dieser BGP-Angriff, der einen großen Teil des Mining-Pool-Verkehrs umleitete, um für den Angreifer Coins zu minen.
Zusammenfassung
Obwohl Bitcoin in mancher Hinsicht Robustheit und Stabilität bietet, ist es in anderen Bereichen sehr instabil. Für Personen, die große Transaktionen auf der Bitcoin-Blockchain durchführen, ist es wichtig, sich bewusst zu sein, dass ihre Risikobewertung je nach aktuellem Zustand des Mining-Ökosystems angepasst werden sollte.
Es muss klargestellt werden, dass die obigen Ansichten zu Foundry nicht als eine Art ernsthafte oder systematische Bedrohung für die Integrität des Bitcoin-Netzwerks interpretiert werden sollten. In den letzten zehn Jahren haben wir aufgrund verschiedener Faktoren Schwankungen in der Zentralisierung der Miner beobachtet. Zum Beispiel:


Ich bin nach wie vor optimistisch, dass die Anreize, die industrielle Bitcoin-Miner antreiben, sinnvoll sind. Sie werden weiterhin nach billigen, ungenutzten, überschüssigen Energiequellen suchen, während die Natur der Energie darin besteht, dass sie effektiv weltweit genutzt werden kann. Langfristig erwarte ich, dass die Hash-Rate-Verteilung der Mining-Pools dezentraler wird. Darüber hinaus gibt es einige technische Verbesserungen, wie Stratum V2, die die Macht von Mining-Pool-Betreibern wegnehmen und wieder in die Hände des Einzelnen legen.

