02 / Architecture
Proofs in your browser, checks on-chain
Your secret never leaves your device. Contracts only verify proofs.
- PoolsThree fixed sizes
- Proof systemGroth16 on BN254
- Exit hatchRagequit
- DisclosureViewing keys
Fig. 1 · System architecture
Select a layer or component to inspect it. Esc clears.
Spec sheet
- Pools
- Three fixed sizesFixed sizes stop amount-based tracing. Tokenized-asset pools come once the ETH pools have run cleanly.
- Proof system
- Groth16 on BN254About 2–4 seconds to prove on a laptop. Verified with the EVM pairing precompile.
- Exit hatch
- RagequitA deposit that is not approved can always return to its source address.
- Disclosure
- Viewing keysExport a key per note to show an auditor or exchange where funds came from.
Components
ZhieldPool.sol- Holds deposits per denomination. Incremental Merkle tree, depth 20 (1,048,576 notes).
AssociationRegistry.sol- Names the screening operator, who approves clean deposits in each pool. A new operator takes effect 7 days after it is proposed.
RewardsVault.sol- Holds NVDA and pays $ZHIELD holders every hour from a balance snapshot (Merkle claims, capped per hour on-chain). Holders claim for themselves. The owner can withdraw; each withdrawal emits OwnerWithdrawal.
ZHIELD- ERC-20 launched on Pons: a bonding curve, then a Uniswap v4 pool.
withdraw.circom- Proves the note is in the tree and the approved set, and has not been spent.