Okay, das ist die Sache mit dem @Dusk_Foundation -Sortitionsprozess – er ist nicht-interaktiv. Das heißt: Jeder einzelne Knoten ermittelt das gleiche Ergebnis für sich allein, ohne dass es ein Hin und Her mit irgendwem geben muss. Warum funktioniert das? Ganz einfach – alle setzen exakt dieselben Eingaben ein, also landen sie, egal wer die Berechnungen durchführt, jedes Mal auf derselben Antwort.
Die Grundidee ist diese: Berechtigte Zuteiler erhalten Credits in Abhängigkeit davon, wie viel sie eingesetzt haben. Wer mehr staked, bekommt mehr Credits. Das nennen sie „deterministische Extraktion“. Und weil es auf diese Weise funktioniert, fügen sich zwei Dinge ganz natürlich zusammen: Erstens kann jeder nachprüfen, ob die Auswahl legitim war, und zweitens haben Personen mit größeren Einsätzen von Natur aus bessere Chancen.
Da ist aber noch ein Aspekt, der im Hintergrund viel Arbeit leistet – der Seed. Er wandert entlang der Kette, und wer den aktuellen Block erzeugt, aktualisiert ihn, bevor er ihn weitergibt. Wenn ein Score berechnet werden muss, führt Dusk SHA3-Hashing gleichzeitig über drei Dinge aus: den Seed, die Round-/Step-Details und die Credit-Nummer. Wenn man das zusammenfügt, erhält man einen einzigartigen Score.
Warum all dieser Aufwand? Vor allem damit niemand im Voraus erraten kann, wer als Nächster als Generator oder als Mitglied des Komitees ausgewählt wird – diese Unvorhersehbarkeit sorgt dafür, dass schlechte Akteure das System nicht ausspielen können. Aber hier ist die Kehrseite: Sobald die Daten tatsächlich on-chain sind, kann jeder zurückgehen und bestätigen, dass alles korrekt durchgeführt wurde.
Ein paar Begriffe, die man hier kennen sollte:
Berechtigung – dein Einsatz muss eine Mindestmenge erreichen und außerdem lange genug „reifen“, um als „mature“ zu gelten, bevor du überhaupt in die Auswahl kommst.
Epoch – aktuell dauert in Dusk eine Epoch 2160 Blöcke, dann setzt sie sich zurück und eine neue startet.
Credit – im Grunde ist dein Einsatz in eine Einheit umgerechnet, die in der Auswahlrechnung verwendet wird.
Seed – die Zufälligkeit, die direkt aus der Kette selbst stammt und mit jeder Block-Signatur aktualisiert wird.
Komitee – eine zufällige Auswahl von Zuteilern, die entweder Blöcke validieren oder sie bestätigen (ratifizieren).
$DUSK #dusk
Die Grundidee ist diese: Berechtigte Zuteiler erhalten Credits in Abhängigkeit davon, wie viel sie eingesetzt haben. Wer mehr staked, bekommt mehr Credits. Das nennen sie „deterministische Extraktion“. Und weil es auf diese Weise funktioniert, fügen sich zwei Dinge ganz natürlich zusammen: Erstens kann jeder nachprüfen, ob die Auswahl legitim war, und zweitens haben Personen mit größeren Einsätzen von Natur aus bessere Chancen.
Da ist aber noch ein Aspekt, der im Hintergrund viel Arbeit leistet – der Seed. Er wandert entlang der Kette, und wer den aktuellen Block erzeugt, aktualisiert ihn, bevor er ihn weitergibt. Wenn ein Score berechnet werden muss, führt Dusk SHA3-Hashing gleichzeitig über drei Dinge aus: den Seed, die Round-/Step-Details und die Credit-Nummer. Wenn man das zusammenfügt, erhält man einen einzigartigen Score.
Warum all dieser Aufwand? Vor allem damit niemand im Voraus erraten kann, wer als Nächster als Generator oder als Mitglied des Komitees ausgewählt wird – diese Unvorhersehbarkeit sorgt dafür, dass schlechte Akteure das System nicht ausspielen können. Aber hier ist die Kehrseite: Sobald die Daten tatsächlich on-chain sind, kann jeder zurückgehen und bestätigen, dass alles korrekt durchgeführt wurde.
Ein paar Begriffe, die man hier kennen sollte:
Berechtigung – dein Einsatz muss eine Mindestmenge erreichen und außerdem lange genug „reifen“, um als „mature“ zu gelten, bevor du überhaupt in die Auswahl kommst.
Epoch – aktuell dauert in Dusk eine Epoch 2160 Blöcke, dann setzt sie sich zurück und eine neue startet.
Credit – im Grunde ist dein Einsatz in eine Einheit umgerechnet, die in der Auswahlrechnung verwendet wird.
Seed – die Zufälligkeit, die direkt aus der Kette selbst stammt und mit jeder Block-Signatur aktualisiert wird.
Komitee – eine zufällige Auswahl von Zuteilern, die entweder Blöcke validieren oder sie bestätigen (ratifizieren).
$DUSK #dusk