Am Wochenende bin ich unten in dem Café am Klimagerät rumgeschlendert und habe beim Dusk-Testnet versucht, Tests zu fahren: dreimal hintereinander das Passwort falsch eingegeben und gebraucht habe ich dann knapp eine halbe Stunde, bis die 21. Transaktion durchlief. Ich habe lange auf die Ausführungsprotokolle der Rusk-VM gestarrt—vorher hatte ich ein paar alte Privacy-Chains ausprobiert. Entweder sie hingen sich tagelang auf, bevor ein Block kam, oder die Anonymisierung war so „voll“ gemacht, dass man für den Prüfzirkus der Regulatoren schlicht keine Audit-Berechtigungen mehr bekommt. Eigentlich hatte ich an diese angeblichen „Privacy-Blockchains“ schon keinen Glauben mehr—bis ich es selbst aus erster Hand probiert habe. Das ist wirklich nichts, was man nur als hübsche Schale um ein Marketing-Concept herum baut.
Ganz am Anfang war ich bei SBA-Konsens noch bei der Annahme, es sei nur ein gebrandetes PoS: Ich hab die Regeln für die Knoten durchgearbeitet und selbst zehntausendmal Double-Spend-Simulationen laufen lassen, bis es klickte. SBA (Segregated Byzantine Agreement, separiertes byzantinisches Abkommen) teilt die Knoten in zwei Ebenen: Eine Ebene ist das Blockproduktionskomitee, das Transaktionen bündelt; die andere Ebene sind stichprobenartig prüfende Validatoren, die zufällige Audits durchführen. Der Zufallscheck wird über VDF (verifizierbare Verzögerungsfunktionen) erzeugt—niemand kann im Voraus vorhersagen, wen sie als Nächstes prüfen. Der Testnetz-Browser zeigt, dass es wegen ungültiger Blöcke bei 3 Knoten zu Strafen kam, bei denen Sicherheiten einbehalten wurden. Zwei davon sind Soft Penalties: ein paar Blöcke verpasst, vorübergehend aus der Konsens-Queue rausgenommen, die effektive gestakte Menge wurde gekürzt. Der dritte ist eine Hard Penalty: erwischt mit Doppelsignatur—die zugesicherten Token wurden direkt um 20% abgezogen und verbrannt. Solche Sanktionsmechanismen setzen die Kosten für Fehlverhalten so hoch, dass der Preis für Trial-and-Error extrem groß ist.
Bei den Transaktionstests habe ich aus Versehen noch eine Null zu viel getippt—die Summe ist sofort außerhalb des Range-Proof-Bereichs gelandet, die Transaktion wurde im selben Moment zurückgeworfen. Nicht mal die Spur einer „leeren“ Transaktion blieb on-chain. Der Range Proof im Phoenix-Protokoll härtet den zulässigen Geldbereich hart ab. Zusammen mit Pedersen-Verpflichtungen, die die Gesamtmenge jedes einzelnen Postens fest einschließen, gibt es kein „aus dem Nichts“ erzeugtes Minting. Dazu kommt noch pro Transaktion eine einmalige Stealth Address, die automatisch bei jeder Überweisung gewechselt wird: Ich habe fünf Test-Coin-Transfers hintereinander gemacht—und auf der Kette lässt sich diese Folge nicht einmal auf dasselbe Konto zurückführen. Die rekursiv aggregierten PLONK-Beweise komprimieren auf 287 Byte; die Einzelprüfung dauert nur 1,8 Millisekunden. Beim Laufen war alles richtig flüssig, selbst in der Peak-Phase des Testnetzes gab’s keine Anzeichen von Stau.
Die Rusk-VM wurde komplett in Rust von Grund auf neu geschrieben und unterstützt den Standard für vertrauliche Assets nativen. Ich musste für die Bereitstellung meines TestTokens nicht mal 200 Zeilen Privacy-Code schreiben. Beim Contract-Gas lag sie um 63% niedriger als EVM plus ZK-Schicht—und sie lässt außerdem einen Einstiegspunkt für Audit-Berechtigungen für die Compliance-Seite offen. Privacy und Compliance müssen also nicht gegeneinander ausgespielt werden—man kann beides gleichzeitig abdecken. Als das Testnetz an jenem Abend durchlief, fühlte ich mich viel sicherer als bei jedem Projekt, in das ich zuvor investiert habe.
#dusk $DUSK @Dusk
Ganz am Anfang war ich bei SBA-Konsens noch bei der Annahme, es sei nur ein gebrandetes PoS: Ich hab die Regeln für die Knoten durchgearbeitet und selbst zehntausendmal Double-Spend-Simulationen laufen lassen, bis es klickte. SBA (Segregated Byzantine Agreement, separiertes byzantinisches Abkommen) teilt die Knoten in zwei Ebenen: Eine Ebene ist das Blockproduktionskomitee, das Transaktionen bündelt; die andere Ebene sind stichprobenartig prüfende Validatoren, die zufällige Audits durchführen. Der Zufallscheck wird über VDF (verifizierbare Verzögerungsfunktionen) erzeugt—niemand kann im Voraus vorhersagen, wen sie als Nächstes prüfen. Der Testnetz-Browser zeigt, dass es wegen ungültiger Blöcke bei 3 Knoten zu Strafen kam, bei denen Sicherheiten einbehalten wurden. Zwei davon sind Soft Penalties: ein paar Blöcke verpasst, vorübergehend aus der Konsens-Queue rausgenommen, die effektive gestakte Menge wurde gekürzt. Der dritte ist eine Hard Penalty: erwischt mit Doppelsignatur—die zugesicherten Token wurden direkt um 20% abgezogen und verbrannt. Solche Sanktionsmechanismen setzen die Kosten für Fehlverhalten so hoch, dass der Preis für Trial-and-Error extrem groß ist.
Bei den Transaktionstests habe ich aus Versehen noch eine Null zu viel getippt—die Summe ist sofort außerhalb des Range-Proof-Bereichs gelandet, die Transaktion wurde im selben Moment zurückgeworfen. Nicht mal die Spur einer „leeren“ Transaktion blieb on-chain. Der Range Proof im Phoenix-Protokoll härtet den zulässigen Geldbereich hart ab. Zusammen mit Pedersen-Verpflichtungen, die die Gesamtmenge jedes einzelnen Postens fest einschließen, gibt es kein „aus dem Nichts“ erzeugtes Minting. Dazu kommt noch pro Transaktion eine einmalige Stealth Address, die automatisch bei jeder Überweisung gewechselt wird: Ich habe fünf Test-Coin-Transfers hintereinander gemacht—und auf der Kette lässt sich diese Folge nicht einmal auf dasselbe Konto zurückführen. Die rekursiv aggregierten PLONK-Beweise komprimieren auf 287 Byte; die Einzelprüfung dauert nur 1,8 Millisekunden. Beim Laufen war alles richtig flüssig, selbst in der Peak-Phase des Testnetzes gab’s keine Anzeichen von Stau.
Die Rusk-VM wurde komplett in Rust von Grund auf neu geschrieben und unterstützt den Standard für vertrauliche Assets nativen. Ich musste für die Bereitstellung meines TestTokens nicht mal 200 Zeilen Privacy-Code schreiben. Beim Contract-Gas lag sie um 63% niedriger als EVM plus ZK-Schicht—und sie lässt außerdem einen Einstiegspunkt für Audit-Berechtigungen für die Compliance-Seite offen. Privacy und Compliance müssen also nicht gegeneinander ausgespielt werden—man kann beides gleichzeitig abdecken. Als das Testnetz an jenem Abend durchlief, fühlte ich mich viel sicherer als bei jedem Projekt, in das ich zuvor investiert habe.
#dusk $DUSK @Dusk
