Latenz und Endgültigkeit von Bitcoin Code

Latenz und Endgültigkeit in verschiedenen Krypto-Währungen
Wie lange dauert es, bis eine Transaktion zum ersten Mal bestätigt wird und erreicht sie jemals einen unumkehrbaren Zustand?

In den letzten 9 Jahren haben wir mehrere Ansätze zur Lösung des allgemeinen Problems der verteilten Ledger gesehen. Wenn es um die Analyse dieser Konsensprotokolle geht, gibt es viele Metriken zu berücksichtigen, aber in diesem Artikel werde ich mich auf zwei von ihnen konzentrieren:

Latenz – die Zeit, die von der Erstellung einer Transaktion bis zur ersten Bestätigung der Annahme durch das Netzwerk benötigt wird (und wie das Vertrauen in die Akzeptanz mit der Zeit zunimmt);

Keine Möglichkeit für den Bitcoin Code

Finalität – die Eigenschaft, dass es nach Abschluss einer Transaktion keine Möglichkeit gibt, sie rückgängig zu machen (oder zu ändern). Im Grunde genommen ist es der Moment, in dem die an der Übertragung beteiligten Parteien das abgeschlossene Bitcoin Code Geschäft in Betracht ziehen können. Die Endgültigkeit kann deterministisch oder probabilistisch sein.
Eine geringe Latenzzeit ist entscheidend für den Aufbau eines realen Zahlungssystems. Sie wollen nicht wirklich 10 Minuten warten, wenn Sie diesen Starbucks-Kaffee mit Krypto kaufen. Bei kleinen Zahlungen würden Händler wahrscheinlich eine Zahlung akzeptieren, sobald die Transaktion zunächst bestätigt wird, vorausgesetzt, sie haben ein hinreichend hohes Vertrauen in die Zahlung, die schließlich akzeptiert wird.

Bei großen Geldtransfers würde der Empfänger der Mittel jedoch wahrscheinlich warten wollen, bis die Transaktion unumkehrbar wird. Oder zumindest sollte genügend Zeit vergehen, bis eine probabilistische Endgültigkeit erreicht ist.

In der Finanzindustrie müssen die Institute möglichst schnell wissen, ob sie tatsächlich bestimmte Vermögenswerte besitzen. Wenn eine Public Distributed Ledger-Technologie (DLT) zur Speicherung der Eigentumsinformationen verwendet wird, müssen die Institute auch sicherstellen, dass es nicht möglich ist, eine bestimmte Transaktion rückgängig zu machen, wodurch sie die Eigentumsrechte verlieren.

Als nächstes werde ich einige der beliebtesten Konsensprotokolle vorstellen, ihre Latenzzeit analysieren und prüfen, ob sie ihre Endgültigkeit erreichen und wie sich dies auf ihre Sicherheit auswirkt.

Bitcoin
Das Bitcoin-Protokoll ist so konzipiert, dass etwa alle 10 Minuten ein neuer Block hinzugefügt wird. Wenn eine neue Transaktion erstellt wird, gibt es keine Möglichkeit, sie zu bestätigen, bis sie in einen Block aufgenommen wird. Die Latenzzeit von Bitcoin ist also recht groß und selbst das Abheben von Geld von einem Bitcoin-Geldautomaten ist ein zeitaufwändiger Prozess für den Endverbraucher.

Was die Endgültigkeit betrifft, so mag es überraschend klingen, aber die meisten blockkettenbasierten Protokolle (einschließlich Bitcoin) haben keine deterministische Finalität. Für jeden gegebenen Block gibt es eine theoretische Möglichkeit, dass eine längere Kette, die vor diesem Block beginnt, über das Netzwerk verbreitet wird. Da das Protokoll vorschreibt, dass Knoten immer die längste Kette als gültig akzeptieren sollten, bedeutet dies, dass alle Blöcke der Anfangskette, die nicht Teil der zweiten, längeren Kette sind, verworfen werden.

In der Praxis gibt es jedoch einen sehr einfachen Weg, eine Transaktion probabilistisch als endgültig zu betrachten: Warten Sie einfach auf 6 Bestätigungsblöcke. Es ist interessant zu sehen, was die Logik hinter dieser Zahl ist.

Nehmen wir an, wir haben einen Angreifer, der ein Drittel der gesamten Minenleistung kontrolliert. Diese Annahme ist durchaus realistisch, wenn wir einen Blick auf die aktuellen Minenpools werfen, wo wir sehen können, dass wir einen Pool haben, der fast 30% der Hashing-Leistung fast ständig kontrolliert. Wenn der Angreifer eine bestimmte Transaktion ins Visier nehmen möchte, beginnt der Angreifer in dem Moment, in dem diese Transaktion erstellt wird, mit dem Abbau einer alternativen Kette.

Ich habe den Code ausgeführt, der am Ende des Bitcoin-Whitepapers vorgestellt und von Satoshi selbst geschrieben wurde. Ich habe die folgenden Ergebnisse bezüglich der Wahrscheinlichkeit, dass eine Transaktion nicht vom Angreifer rückgängig gemacht wird:

~30,3% nach dem Warten auf 1 Bestätigungsblock
77,6% nach Warten auf 6 Bestätigungsblöcke
~90,2% nach dem Warten auf 10 Bestätigungsblöcke
99,99% nach Warten auf 45 Bestätigungsblöcke