How it works
Private transfers
Inside the pool, you can transfer value to any other user via their spending pubkey. No on-chain data links sender to recipient. The spend circuit enforces conservation of value.
2-in / 2-out note model
Every spend takes exactly two input notes and produces exactly two output notes — one for the recipient and one as change back to the sender. If you only need one input, the circuit accepts a dummy zero note. If no change is needed, the change note carries zero value.
ℹ
The spend circuit never reveals which notes are consumed. It only proves membership in the Merkle tree and that input value equals output value.
What gets recorded on-chain
- ·Two nullifiers (proving the input notes are consumed).
- ·Two new commitments (the output notes).
- ·The Merkle root used for the membership proof.
- ·No token address, amount, sender address, or recipient address.