Unter dem Einfluss des Taifuns „Sarder“ saß ich am Flughafen und wartete auf einen verspäteten Flug. Im Radio lief alle zehn Minuten: „Entschuldigung, wir informieren Sie“, und dann wurde die Meldung von „voraussichtlich eine Stunde Verspätung“ auf „zwei Stunden“ geändert. Am Ende hieß es einfach: „Bitte haben Sie Geduld und warten Sie.“ Neben mir war ein älterer Herr so wütend, dass er beim Kundenservice anrief: „Fliegt es denn jetzt oder nicht?“ Der Kundenservice sagte: „Wetterbedingt. Wir warten auch auf die neuesten Anweisungen.“ In dem Moment dachte ich plötzlich: Dieser Zustand, „immer auf das endgültige Ergebnis zu warten“ – ist das nicht genau das Endgültigkeitsdilemma, in dem sich viele Blockchains befinden?
Im Grunde funktionieren die Transaktionsbestätigungen in den meisten PoS-Ketten auch nur nach dem Prinzip „abwarten“: mehr Blöcke anschließen lassen, die Wahrscheinlichkeit für Forks auf einen ausreichend niedrigen Wert drücken, und erst dann sagt man, dass das Geld wirklich angekommen ist. Das Problem ist nur: Du weißt nicht, wie lange du warten musst.
Das in Dusk’s Whitepaper beschriebene „Rolling Finality“ (Rollierende Endgültigkeit) zerlegt das Ganze in vier Stufen: Accepted (angenommen), Attested (bezeugt), Confirmed (bestätigt) und Final (endgültig). Accepted bedeutet: Es gibt einen Erfolgsausweis, aber der Block kann noch durch Blöcke aus früheren Runden ersetzt werden; Attested heißt: Alle vorherigen Iterationen sind gescheitert, dieser Block kann in derselben Runde nicht mehr ersetzt werden; Confirmed ist dann gegeben, wenn genügend nachfolgende Blöcke dazukommen, sodass es im Normalfall stabil ist – sofern nicht ein Urvorgänger zurückgerollt wird; Final ist schließlich vollständig verriegelt, in jedem Fall unumkehrbar.
Die Daten begründen die Notwendigkeit dieses Designs: Theoretisch kann ein Block bis zu 50 Iterationen durchlaufen. Scheitern hintereinander 16 Mal, versetzt das Protokoll automatisch in den Notfallmodus – alle Zeitsperren werden geschlossen, und die Iterationen laufen unendlich weiter, bis ein Block produziert wird. 50 ist die endgültige Konfigurationsobergrenze, aber im Notfallmodus bleibt der offene Pfad weiter aktiv.
Ehrlich gesagt: Wenn man früher andere Projekte über „Finalität“ reden hört, hatte ich immer das Gefühl, es sei wie eine Flughafenansage – man sagt es zwar, aber es bringt nichts. Das Vier-Stufen-Modell von Dusk hat mir zum ersten Mal das Gefühl gegeben, dass Endgültigkeit tatsächlich quantifizierbar und planbar ist. Von Accepted bis Final hat jede Stufe klare mathematische Bedingungen – nicht so ein Ausweichen mit „abwarten“ als Alibi.
Heute hat dieser Flug am Ende vier Stunden Verspätung gehabt, bis er wirklich abgehoben ist. Wenn die Endgültigkeit einer Blockchain genauso wie im Flughafen auf „Warten“ beruht, wer würde sie dann für Abrechnungen im Finanzbereich verwenden? Dusk zerlegt „Unumkehrbarkeit“ in vier Stufen, und jede Stufe hat klare Regeln – genau diese Verlässlichkeit ist das, was ein Finanzsystem braucht. #dusk $DUSK @Dusk
Im Grunde funktionieren die Transaktionsbestätigungen in den meisten PoS-Ketten auch nur nach dem Prinzip „abwarten“: mehr Blöcke anschließen lassen, die Wahrscheinlichkeit für Forks auf einen ausreichend niedrigen Wert drücken, und erst dann sagt man, dass das Geld wirklich angekommen ist. Das Problem ist nur: Du weißt nicht, wie lange du warten musst.
Das in Dusk’s Whitepaper beschriebene „Rolling Finality“ (Rollierende Endgültigkeit) zerlegt das Ganze in vier Stufen: Accepted (angenommen), Attested (bezeugt), Confirmed (bestätigt) und Final (endgültig). Accepted bedeutet: Es gibt einen Erfolgsausweis, aber der Block kann noch durch Blöcke aus früheren Runden ersetzt werden; Attested heißt: Alle vorherigen Iterationen sind gescheitert, dieser Block kann in derselben Runde nicht mehr ersetzt werden; Confirmed ist dann gegeben, wenn genügend nachfolgende Blöcke dazukommen, sodass es im Normalfall stabil ist – sofern nicht ein Urvorgänger zurückgerollt wird; Final ist schließlich vollständig verriegelt, in jedem Fall unumkehrbar.
Die Daten begründen die Notwendigkeit dieses Designs: Theoretisch kann ein Block bis zu 50 Iterationen durchlaufen. Scheitern hintereinander 16 Mal, versetzt das Protokoll automatisch in den Notfallmodus – alle Zeitsperren werden geschlossen, und die Iterationen laufen unendlich weiter, bis ein Block produziert wird. 50 ist die endgültige Konfigurationsobergrenze, aber im Notfallmodus bleibt der offene Pfad weiter aktiv.
Ehrlich gesagt: Wenn man früher andere Projekte über „Finalität“ reden hört, hatte ich immer das Gefühl, es sei wie eine Flughafenansage – man sagt es zwar, aber es bringt nichts. Das Vier-Stufen-Modell von Dusk hat mir zum ersten Mal das Gefühl gegeben, dass Endgültigkeit tatsächlich quantifizierbar und planbar ist. Von Accepted bis Final hat jede Stufe klare mathematische Bedingungen – nicht so ein Ausweichen mit „abwarten“ als Alibi.
Heute hat dieser Flug am Ende vier Stunden Verspätung gehabt, bis er wirklich abgehoben ist. Wenn die Endgültigkeit einer Blockchain genauso wie im Flughafen auf „Warten“ beruht, wer würde sie dann für Abrechnungen im Finanzbereich verwenden? Dusk zerlegt „Unumkehrbarkeit“ in vier Stufen, und jede Stufe hat klare Regeln – genau diese Verlässlichkeit ist das, was ein Finanzsystem braucht. #dusk $DUSK @Dusk

