Skip to main content

What is Privacy Pools v2?

Privacy Pools v2 is a privacy protocol that enables compliant, private transactions on Ethereum. It builds on the foundation of v1 and introduces a new shielded pool design that offers greater privacy affordances, better user experience, and new features.

Key features in v2

  • Private transfers: transfer funds within the pool without revealing sender, recipient, or amount.
  • EVM address receipt: send and receive funds using any standard Ethereum address, no pre-registration required.
  • Keystore contract: register with the keystore contract to create your account and rotate your keys, no separate seed phrase to back up.
  • Multi-asset pool: single pool with multi-asset support for greater anonymity.
  • Selective disclosure: create receipts for single transactions or viewing keys to reveal account activity.
  • Compliance: 0xbow ASP screens deposits and maintains an association set of approved deposits to keep the pool clean.
  • Private yield: shield a yield-bearing position on Aave v3 as fixed-count ppUSDC shares, deposit and withdraw through a router, with the protocol fee charged on yield only.
  • Intents: intent-based routing through a DEX aggregator, with the route frozen into the proof: leave the pool as a different token, change asset without leaving, or enter from any wallet token, on this chain or across a bridge. The RelaySwaps contract is the on-chain half of the integration.
  • Batch withdrawal: empty a whole single-asset balance to one address in one transaction, up to ten transact proofs at a time.
  • Stealth withdrawal: pay a withdrawal to a one-time ERC-5564 address with the announcement bound on-chain to the payout.
  • Relayed registration: a relayer can register your keystore entry and withdraw for you in one transaction, signed EIP-712 or ERC-1271, so a Safe or other contract account can hold a pool account.

What's coming next

  • Multisig spending: contract-account authorisation inside the pool (an authType beyond the direct key) so no single signer can spend.
  • Conditional spending: notes whose spend conditions live in the circuit rather than with a keystore owner, so a spender need not be known when the note is created (the basis for in-pool atomic settlement).
  • Hardware wallet support: store secrets on a hardware device for greater security.

Documentation sections

  • Core concepts: mental models for v2 including notes, commitments, nullifiers, and more.
  • Operations: protocol actions supported by v2 including deposit, transfer, withdraw, and more.
  • Guides: sample repos and code for building on the v2 SDK.
  • Protocol reference: technical reference for v2 circuits, contracts (core, relay processors, and the yield stack), and ASP.
  • SDK reference: technical reference for the v2 SDK, including the stealth subpath.
  • Deployments: contract addresses for Ethereum mainnet, BNB Chain, and Citrea, plus the Sepolia testnet.
  • Developer Guide: local setup, testing, and common failure modes.