#dusk $DUSK @Dusk
Went through Phoenix's balance verification this week because I wanted to understand how the network confirms a transfer is valid when it can't see the amounts involved.

The answer is Pedersen commitments, and it's more elegant than I expected.

DuskEVM launched in Q1 2026, adding a second execution path on top of DuskDS. The underlying DuskDS still uses Phoenix for native privacy transactions — meaning this mechanism has been live since mainnet launch in January 2025.

Every Phoenix note carries a value commitment — not the amount itself, but a cryptographic commitment to it. Pedersen commitments are homomorphic: you can add and subtract them. So the network can verify that the sum of input commitments equals the sum of output commitments, without ever seeing what the values actually are.

Moonlight handles this transparently: the network sees the amounts, checks the arithmetic directly. Phoenix handles it cryptographically: the amounts stay hidden, but the commitment arithmetic still holds.

The comparison that clicked for me: it's the difference between a bank verifying your account balance by reading it, versus proving your balance is sufficient by showing a receipt — without showing the actual number.

An honest caveat: Pedersen commitments alone don't prove the values are positive. Zero-knowledge range proofs handle that separately.

How widely does this model transfer to other contexts — is commitment-based arithmetic used anywhere outside ZK-native chains, or is it still mainly a blockchain-specific tool? @Dusk

$DUSK #dusk