Tzunami

Privacy-first DeFi with ZK-Compliance and encrypted ERC20s. Compliant, private, future-proof.

Tzunami

Created At

ETHGlobal New Delhi

Winner of

1inch

1inch - Extend Limit Order Protocol 3rd place

Project Description

Tzunami is a platform that lets you move money on-chain like it’s nobody’s business… literally. Balances, transfers, deposits — all encrypted, all private. But here’s the twist: it also proves you’re a legit user so regulators don’t freak out.

Behind the scenes, Tzunami runs on zero-knowledge proofs for identity and encrypted ERC20 tokens for transactions. We use Groth16 circuits, ElGamal encryption, and Poseidon hashing to keep balances hidden while still proving everything is valid. The end result? A DeFi system that’s private for users and provable for institutions.

Think: stealth transactions + compliance badge = Tzunami.

How it's Made

How It Works

--> Identity & Registration (Privacy-preserving KYC)

Onboarding: Users complete a one-time identity check via a trusted provider. Instead of storing docs, we issue a zero-knowledge credential that proves compliance without leaking raw data.

Hidden identity key: Each verified user gets a Baby JubJub keypair (ZK-friendly curve) bound to their identity. This key signs private actions inside the protocol but can’t be linked back to their passport/email.

--> Transactions & Balance Privacy

Encrypted tokens: Balances are stored using ElGamal encryption. On-chain contracts only ever see ciphertexts, not raw numbers.

Proof of correctness: Every deposit, withdrawal, or transfer generates a zkSNARK (Groth16) showing the math adds up (no double-spending, amounts valid). The proof is verified on-chain before updating state.

Nullifiers: Each spend action produces a unique nullifier to prevent double-use of the same note, while still keeping sender/amount private.

--> Private Transactions & Swaps

Now the fun part: moving money around, privately.

a. Transfers

1.When you send funds to another registered user, you don’t reveal addresses or amounts. 2.Instead, you generate a new encrypted balance for the receiver, plus a zkSNARK that proves you had enough to send. 3.The chain validates the proof, updates commitments, but never shows raw balances.

b. Swaps (via 1inch)

1.For exchanging tokens, Tzunami plugs into 1inch as the swap backend. 2.You sign a private swap intent, and Tzunami batches these off-chain. 3.When executed, the swap happens through 1inch liquidity sources, but amounts stay encrypted and tied back to your hidden key.

background image mobile

Join the mailing list

Get the latest news and updates