#dusk takes a different route. Its stack uses Schnorr and BLS signatures, because they fit different parts of the protocol rather than being treated as interchangeable tools. Dusk documents Schnorr as part of the foundation for signing and verifying protocol actions, while BLS12-381 is used where signature aggregation is valuable.
That distinction matters more than it first sounds. A less obvious detail is that Dusk’s consensus work has specifically dealt with aggregated agreement messages and optimizing BLS public-key handling.
My takeaway: this looks less like “two signature systems” and more like choosing the right tool for different verification workloads. BLS can reduce the data needed when signatures are aggregated, while Schnorr gives Dusk a compact signing scheme for other actions.
The trade-off is extra cryptographic complexity. But in a blockchain, one universal primitive isn’t automatically the simplest design. $DUSK @Dusk
That distinction matters more than it first sounds. A less obvious detail is that Dusk’s consensus work has specifically dealt with aggregated agreement messages and optimizing BLS public-key handling.
My takeaway: this looks less like “two signature systems” and more like choosing the right tool for different verification workloads. BLS can reduce the data needed when signatures are aggregated, while Schnorr gives Dusk a compact signing scheme for other actions.
The trade-off is extra cryptographic complexity. But in a blockchain, one universal primitive isn’t automatically the simplest design. $DUSK @Dusk