Chapter 6
Privacy Pools and Association Sets
Privacy Pools, proposed by researchers including Vitalik Buterin, attempt to reconcile transaction privacy with compliance. Instead of a single anonymity set containing every depositor, users prove membership in an association set — demonstrating their deposit is not linked to known illicit sources while still breaking the on-chain link between deposit and withdrawal addresses.
The core idea uses zero-knowledge proofs: a withdrawer shows their deposit belongs to a subset of the pool that does not intersect with sanctioned or stolen funds, without revealing which specific deposit is theirs. Merkle trees and nullifiers prevent double-spending while preserving privacy among honest participants.
Several teams have prototyped Privacy Pool variants on Ethereum and L2s. None have achieved mainstream adoption yet, but the framework influences how builders think about privacy under Travel Rule pressure and exchange due diligence — privacy as a provable property rather than total opacity.