A funded deposit and withdrawal round trip has been verified. Audit reports are not tied to a specific SDK version.
Start here
Overview
A shielded SOL pool on Solana.
ZeroTrace lets you deposit SOL into the Privacy Cash shielded pool and later withdraw it to a separate address. Zero-knowledge proofs, generated in your browser, show you own funds in the pool without revealing which deposit they came from.
Privacy Cash is an external protocol, not a ZeroTrace-operated service. ZeroTrace never holds your SOL, keys or recovery secrets.
- Deposit and withdraw SOL on Solana mainnet.
- Phantom, Backpack and Solflare software wallets. Hardware wallets are unsupported.
- Two steps: deposit now, withdraw whenever you choose.
Start here
Getting started
From wallet to private withdrawal.
Open Private Pool and connect your wallet. Sign the message twice; it moves no funds. Save an encrypted recovery file, then restore it once to verify it works.
Deposit SOL and approve the transaction in your wallet. Generating the privacy proof can take up to a minute. Later, withdraw to a different Solana address.
- Keep a little SOL in your wallet for network fees.
- Withdrawals to the wallet that deposited are blocked, because they would link the two.
- Refresh the shielded balance any time; it can take up to two minutes to read.
Using the pool
Deposits & withdrawals
Signing, fees, recovery and transfer states.
Uses the pinned Privacy Cash SDK 1.2.3 utilities in the browser. Sign the exact message ‘Privacy Money account sign in’ twice: both Ed25519 signatures must verify and match exactly.
Before any deposit, save a password-encrypted recovery file and reopen it to verify it. Encryption uses AES-256-GCM and PBKDF2-SHA-256 with 600,000 iterations. Use a unique password of at least 12 characters and store it separately. Anyone with the file and password may control your shielded funds; ZeroTrace cannot recover a lost file and password.
Withdrawal quotes use the provider's current fees — about 0.006 SOL plus 0.35% at the time of writing. The amount you enter includes the fee; the recipient receives the remainder. Funds spread over more than two notes can cause a partial withdrawal.
- A deposit is a public transaction.
- Transfer states distinguish preparation, wallet approval, submission, confirmation and unknown outcomes. Never blindly retry an unknown outcome — check the transaction first.
- There is no devnet pool; every transfer uses real SOL.
Using the pool
Privacy tips
What the pool hides, and what it can't.
The pool removes the direct on-chain link between depositing and receiving wallets. Observers can still try to match them by other signals.
- Use common round amounts.
- Wait between depositing and withdrawing.
- Withdraw to a fresh address that has no history.
- Never send withdrawn SOL back to your original wallet or fund the new address from an exchange account in your name.
- A small, quiet pool offers fewer deposits to hide among.
Security & reference
Security & audit status
Trust boundaries and known gaps.
Solana is a public ledger. ZeroTrace cannot guarantee anonymity. Privacy Cash publishes audit reports, but they are not tied to a specific SDK version, so audit coverage of the code used here is not established.
Signatures, derived keys and decrypted notes stay in your browser's memory and are cleared when you disconnect or change accounts. Only a signature fingerprint is kept locally to detect changes.
- Check the network, recipient and amount in your wallet before approving.
- Privacy tools are restricted in some countries; check local rules.
Security & reference
API reference
No public API is available.
ZeroTrace does not publish transfer or account endpoints. All transfers are built and signed in your browser.
Security & reference
Troubleshooting
Common problems and safe next steps.
If no wallet appears, install a supported software wallet and reload. If signing is declined, no funds move. A changed or inconsistent signature blocks the session — reconnect the matching wallet and restore your recovery file.
“Not verified” is not a zero balance. Wait and refresh; never deposit again to fix a failed balance read. “Not sent · safe to retry” means nothing left your wallet.
- Store recovery files and passwords separately; never share either.
- Only confirmed on-chain records prove a transfer.