Ich habe tiefer untersucht, wie Dusk Transaktionen handhabt, und dabei ist mir etwas aufgefallen, das ich vorher nicht wirklich bedacht hatte.

Moonlight und Phoenix sind nicht einfach nur zwei Versionen von dem Gleichen.

Moonlight ist kontobasiert. Du hast ein Konto, einen Kontostand, einen Nonce und Schlüssel, und das Netzwerk prüft die Transaktion anhand dieses Zustands.

Phoenix geht einen anderen Ansatz.

Es verwendet Notizen, die in einem Merkle-Baum gespeichert sind. Wenn eine Notiz ausgegeben wird, wird ein Nullifier erzeugt, sodass dieselbe Notiz nicht erneut ausgegeben werden kann.

Was meine Aufmerksamkeit geweckt hat, ist, dass das Netzwerk nicht offenlegen muss, welche konkrete Notiz ausgegeben wurde.

Genau dafür kommen die ZK-Beweise ins Spiel — die Transaktion kann verifiziert werden, ohne die zugrunde liegenden privaten Details offenzulegen. Die Einmal-Notizschlüssel helfen außerdem dabei, die Nachverfolgbarkeit von Transaktionen zu reduzieren.

Es gibt zudem einen Delegationsmechanismus für Dinge wie Scannen und Beweiserstellung, ohne der delegierten Partei Zugriff zu geben, um die Mittel auszugeben.

Daher würde ich es nicht einfach so beschreiben: „Moonlight ist transparent und Phoenix ist privat.“

Sie sind unterschiedliche Transaktionsmodelle, die auf unterschiedliche Anforderungen zugeschnitten sind, während sie auf demselben Dusk-Netzwerk laufen.

Und ehrlich gesagt finde ich, dass das eine ziemlich interessante Designentscheidung ist.

Was würdest du auf Dusk bevorzugen?

@Dusk $DUSK #dusk
🔥 Phoenix
50%
🌙 Moonlight
10%
⚡ Both
20%
🤔 Depends on the use case
20%
10 Stimmen • Abstimmung beendet