#dusk $DUSK Über Dusk: Nicht nur auf die Staking-Mengen starren
Viele, wenn sie von PoS-Sicherheit sprechen, haben im Kopf sofort das Bild „Wer viel Geld hat, entscheidet alles“ – Großanleger schließen sich zusammen, und das Staking-Gewicht bestimmt den Rest. Dieses festgefahrene Denken passt jedoch nicht zu Dusk, da muss man die Sache neu sortieren.
Dusk verwendet einen Konsens namens Succinct Attestation, mit einem PoS-Komitee-Modell. Der Kern liegt nicht darin, wie viel man staked, sondern darin, wer zum Produzieren ausgewählt wird – sogar der Blockproduzent selbst kann es im Voraus nicht ausrechnen. Das System nutzt einen Algorithmus namens deterministic sortition: Er nimmt die SHA3-Prüfsumme des Samens aus dem vorherigen Block, kombiniert Seed, Runde und Schritt zu einem Score und filtert dann anhand der Staking-Gewichte Kandidaten heraus. Wie kommt der Seed zustande? Der Blockproduzent signiert den Seed der vorherigen Runde mit seinem privaten Schlüssel – das heißt: Bevor er die Signatur abgibt, weiß er selbst nicht, wie der Seed der nächsten Runde aussehen wird. Wenn man versucht, im Voraus Bündnisse zu schmieden oder zu kolludieren, ist der Weg auf Protokollebene praktisch „eingeschweißt“.
Auch die Fork-Handling-Mechanik ist ziemlich spannend. rolling finality hat vier Stufen: accepted, attested, confirmed, final – und man schiebt die Entscheidungen Schritt für Schritt nach vorne. Blöcke in niedrigen Runden können durch spätere Blöcke ersetzt werden, wenn diese späteren Blöcke keine „Fehlerbeweise“ erreicht haben; aber sobald in der Folge ausreichend viele bestätigte Blöcke aufgeschichtet sind, sinkt die Fork-Wahrscheinlichkeit exponentiell, bis sie schließlich im irreversiblen final-Zustand „festgeschweißt“ wird. Um genau diese Art von „cleverem“ Vorgehen zu verhindern – bewusst frühere Runden versanden lassen, damit die anderen abräumen, während man selbst hinten Belohnungen einsammelt – baut das Protokoll mehrere Gegenmaßnahmen ein: Abstimmungsbelohnungen, zusätzliche Punkte, die Sperrung der Abstimmungsberechtigung für den nächsten Blockproduzenten sowie eine Obergrenze für die Anzahl der Iterationen. Die meisten Spieltheorie-Lücken, durch die man sich theoretisch mogeln könnte, sind damit im Grunde dichtgemacht.
Wenn man zurückblickt, geben viele Ketten das Problem der „vorhersagbaren Blockproduktionsrechte“ einfach an die Bestrafungsmechanismen ab. Dusk setzt stattdessen direkt beim Wahrscheinlichkeits- bzw. Auswahlalgorithmus an. Das ist eine meiner Meinung nach grundsätzlichere Lösung: Sicherheit entsteht nicht durch Strafen, sondern dadurch, dass man es nicht ausrechnen kann – und genau dieses „nicht ausrechenbar sein“ wird eingebaut. Ob sich ein „Copy & Paste“ lohnt? Entscheidet selbst. @Dusk
Viele, wenn sie von PoS-Sicherheit sprechen, haben im Kopf sofort das Bild „Wer viel Geld hat, entscheidet alles“ – Großanleger schließen sich zusammen, und das Staking-Gewicht bestimmt den Rest. Dieses festgefahrene Denken passt jedoch nicht zu Dusk, da muss man die Sache neu sortieren.
Dusk verwendet einen Konsens namens Succinct Attestation, mit einem PoS-Komitee-Modell. Der Kern liegt nicht darin, wie viel man staked, sondern darin, wer zum Produzieren ausgewählt wird – sogar der Blockproduzent selbst kann es im Voraus nicht ausrechnen. Das System nutzt einen Algorithmus namens deterministic sortition: Er nimmt die SHA3-Prüfsumme des Samens aus dem vorherigen Block, kombiniert Seed, Runde und Schritt zu einem Score und filtert dann anhand der Staking-Gewichte Kandidaten heraus. Wie kommt der Seed zustande? Der Blockproduzent signiert den Seed der vorherigen Runde mit seinem privaten Schlüssel – das heißt: Bevor er die Signatur abgibt, weiß er selbst nicht, wie der Seed der nächsten Runde aussehen wird. Wenn man versucht, im Voraus Bündnisse zu schmieden oder zu kolludieren, ist der Weg auf Protokollebene praktisch „eingeschweißt“.
Auch die Fork-Handling-Mechanik ist ziemlich spannend. rolling finality hat vier Stufen: accepted, attested, confirmed, final – und man schiebt die Entscheidungen Schritt für Schritt nach vorne. Blöcke in niedrigen Runden können durch spätere Blöcke ersetzt werden, wenn diese späteren Blöcke keine „Fehlerbeweise“ erreicht haben; aber sobald in der Folge ausreichend viele bestätigte Blöcke aufgeschichtet sind, sinkt die Fork-Wahrscheinlichkeit exponentiell, bis sie schließlich im irreversiblen final-Zustand „festgeschweißt“ wird. Um genau diese Art von „cleverem“ Vorgehen zu verhindern – bewusst frühere Runden versanden lassen, damit die anderen abräumen, während man selbst hinten Belohnungen einsammelt – baut das Protokoll mehrere Gegenmaßnahmen ein: Abstimmungsbelohnungen, zusätzliche Punkte, die Sperrung der Abstimmungsberechtigung für den nächsten Blockproduzenten sowie eine Obergrenze für die Anzahl der Iterationen. Die meisten Spieltheorie-Lücken, durch die man sich theoretisch mogeln könnte, sind damit im Grunde dichtgemacht.
Wenn man zurückblickt, geben viele Ketten das Problem der „vorhersagbaren Blockproduktionsrechte“ einfach an die Bestrafungsmechanismen ab. Dusk setzt stattdessen direkt beim Wahrscheinlichkeits- bzw. Auswahlalgorithmus an. Das ist eine meiner Meinung nach grundsätzlichere Lösung: Sicherheit entsteht nicht durch Strafen, sondern dadurch, dass man es nicht ausrechnen kann – und genau dieses „nicht ausrechenbar sein“ wird eingebaut. Ob sich ein „Copy & Paste“ lohnt? Entscheidet selbst. @Dusk