Verify
Don't trust. Verify.
Unzeen hides who trades, not what the pool owes. Every check on this page runs in your browser, against signed and anchored data.
ZEC reserve
Why the ZEC reserve is attested, not proven
The pool's ZEC sits in the shielded pool, where balances are invisible by design. Today there is no way to prove a shielded balance without revealing the deposit notes, and revealing them would link deposits to their time and amount, which is the very thing Unzeen exists to hide. So the operator signs a statement of the reserve, rounded down, inside the same digest as the roots.
- Proven: every token and the SOL part of the ZEC cover, held by vaults that signed the snapshot.
- Bridged: ZEC SPL on the vaults (what ZEC-paired tokens trade against), counted one to one. It is on Solana and signed, but its value rests on the bridge issuer. USDC and USD1 on the vaults are listed, never counted.
- Attested: the ZEC reserve, signed by the operator and anchored on Solana, so it cannot be changed or shown differently later.
Roadmap: a zero-knowledge proof of reserves over the pool's own shielded notes (the sum is at least X, nothing about the notes is revealed), and threshold custody of the pool keys.
Verify it yourself
Do not take this page's word for it either. Everything it checks, you can check offline.
- 01
Download your proof
Unlock your key above, run “Check my balance”, then “Download proof”. The file holds this snapshot and your pieces.
- 02
Run the checker
A single file, no dependencies, Node.js 18 or newer. It recomputes the digest, every signature, every path and the solvency sums.
node verify-proof.mjs unzeen-proof-<chain>-<id>.json --operator <attestation key>
- 03
Check the vaults on chain
Compare the vault balances with any Solana RPC you trust, at the snapshot slot or later.
solana balance <vault> spl-token accounts --owner <vault>
- 04
Check the anchor
Look up the memo tx (copy it from the snapshot card) in any explorer, ideally over Tor. Its memo must be exactly the roots digest.
What we don't show, and why
Proving the pool is honest must not cost anyone their privacy. These stay unzeen.
How many people use the pool
Every tree is padded with dummy leaves to the same size, at least 1,024, and the order is shuffled.
Anyone else's balance
Each balance is rounded up and split into 2–4 pieces with a fresh random blind every snapshot. A sibling in your path is a subtree total, never a person.
Which deposit is whose
No notes, no nullifiers, no transaction ids of the pool. Publishing them would tie a deposit to its time and amount.
The viewing key
Never shown, never published, never given to an auditor: it would reveal every memo, and with it every anon key.
Who checked their proof
Proofs are not stored in your browser and not counted. The answer is padded to one fixed size, so it says nothing about what you hold.