After 16 weeks of RIGOROUS grind at
@Web3Bridge, participating in their Zero Knowledge program; My team built a full shielded token stack on EVM for private token transfers and I’m sharing both a demo video (Privacy native wallet extension + User facing dApp UX) and the technical paper in this post.
Architecture: Noir circuit + Barretenberg/Aztec UltraHonk proving + Solidity verifier + relayer + client-side note discovery.
Model: UTXO-style notes with
- commitment = Poseidon(owner_pk, token_field, amount, blinding),
- Nullifier-based one-time spends (nullifier = Poseidon(spending_key, commitment)),
- Depth-20 incremental Merkle tree + rolling root window, fixed public input lanes, and mode-gated constraints for transfer/unshield.
- ShieldedERC20Pool (multi-token allowlisted pool) with routed encrypted note delivery (RoutedCommitment) using ECDH + HKDF-SHA256 + AES-GCM, and channel/subchannel for note discovery.
Design goal is explicit: private in-pool state transitions with verifiable integrity, while shield/unshield remain honest public boundary actions.
If you watch the video + read the paper, you’ll see both the privacy native wallet extension and the user facing dapp full loop working end-to-end: shield → private transfer(s) → note scan/decrypt → nullifier checks → unshield.
Big shout out to the mentors holding our hands throughout the duration of the program. The knowledge passed has been invaluable.
@WiseMrMusa,
@only1franchesco,
@Oba_Ddev,
@Dev_esayayo.
Next steps for us are;
- Production hardening and compliance-by-design
- Formal security review/audit of circuits/contracts/relayer, wallet key-management hardening (secure enclaves/HSM-backed options), relayer auth + anti-replay protections
- Performance tuning for proof latency/UX.
- In parallel, we’ll implement a compliance layer that preserves base protocol privacy while enabling jurisdiction-aware controls at the app edge (sanctions/geo screening for boundary actions, risk scoring/transaction monitoring, optional disclosure and auditable consent flows for regulated contexts), alongside legal review and phased rollout with testnet pilots before mainnet.
Read technical document here:
drive.google.com/file/d/1oDq…
References / lineage:
(
@Zcash) Zcash protocol (UTXO commitments, nullifiers, shielded value flow)
(
@Ztark_Labs) STRK20 shielded token design direction
(
@aztecnetwork) Aztec/Barretenberg UltraHonk proving system
Noir language/tooling for circuit authoring.