A dollar that minds its own business
Every USDC payment on Solana is public forever: the amount, the sender, the recipient and their whole history, readable by anyone. Zero fixes that. Its currency, zkUSD, is a dollar backed one for one by USDC that you can spend in three modes, choosing for every payment how much the world gets to see.
Three modes, one token
| Standard | Private | Shielded | |
|---|---|---|---|
| Amount | Public | Encrypted | Hidden |
| Sender & recipient | Public | Visible | Unlinkable |
| Built on | Token-2022 | Confidential transfers | Groth16 shielded pool |
| Best for | DeFi and exchanges | Payroll, invoices | Payments nobody should trace |
The three modes are one token in three states, and moving between them is a single action in the app. The part that is new to Solana is the last link: money moves between Private and Shielded with the amount hidden the whole way, bound by a zero-knowledge proof that works across two different elliptic curves.
What is under the hood
- Confidential transfers. Solana’s native encrypted balances: twisted ElGamal on ristretto255, with three zero-knowledge proofs checked by the chain on every transfer.
- A Groth16 shielded pool. Poseidon note commitments in a 26-level Merkle tree, nullifiers stored as accounts, and a join-split proof verified on-chain with Solana’s BN254 syscalls.
- A cross-curve bridge. A proof that a ristretto255 commitment and a BN254 commitment hide the same number, so value crosses between the two systems without ever being revealed.
- One approval, any wallet. Proofs are staged ahead of time so every action fits the transactions today’s wallets sign.