Overview
Starkzap supports two privacy protocols. They are independent implementations, not two backends behind one interface — they have different state models, different proving setups, and different submission paths. You pick one per integration and code against it directly.- STRK20 privacy pool — one pool for every token. Your balance is a set of private notes. A remote proving service builds a proof, and a relayer submits it, so your account never appears on-chain.
- Tongo — one contract per token. Your balance is a single encrypted number on your own account. Proofs are generated locally, and you submit the transaction yourself.
Comparison
Which one to use
Choose STRK20 when you need to hide who transacts, not just how much. Because a relayer submits the transaction, the sender’s address, nonce, and gas payment stay off-chain. That is the property Tongo does not offer. Choose Tongo when hiding amounts is enough, and you want an integration you can ship today: it installs from npm with no access request, works with any wallet, proves locally with no external service, and batches with your other calls in a single transaction.Starkzap does not offer a shared abstraction over the two. Quoting the SDK itself: Tongo keeps an encrypted balance per account and proves locally, while the privacy pool spends notes and needs a remote prover whose output rides on the transaction rather than inside a call. There is no shared interface to code against.
What neither protocol hides
Both protocols privatize what happens between entering and leaving. Entering and leaving are public in both. Neither protocol hides that you interacted with it at all, and neither hides the timing or the token. Treat them as tools for unlinking a source from a destination, not as cloaks over your whole on-chain history.Next steps
STRK20 privacy pool
Hide amounts, sender, and recipient. Notes, a remote prover, and relayer submission.
Tongo
Hide amounts. Encrypted balances, local proving, batches with your other calls.