Nullifier

Security Updated Sep 2026

What is a nullifier?

A nullifier is a one-time marker that gets published on-chain when a piece of shielded value is spent. Its job is narrow and critical: prevent the same funds from being spent twice. Once a nullifier appears, any attempt to spend the same underlying note again is rejected by the protocol.

The privacy-preserving part is what the nullifier does not reveal. Observers can see that someone spent something, and can check that the nullifier has not been used before, but cannot link the nullifier back to the specific shielded address note it consumed. The spending graph, which transparent chains publish in full, simply never gets published.

Where you meet nullifiers

  • Zcash shielded pools: every shielded spend publishes a nullifier alongside a zk-SNARK proof that the spent note exists and has not been spent before.
  • Mixers such as Tornado Cash: withdrawals present a proof that a deposit exists in the commitment tree, plus a nullifier so the same deposit cannot be withdrawn twice. This is how a mixer proves you are entitled to funds without revealing which deposit is yours.

Why it matters for tracing

Nullifiers are the mechanism that makes internal shielded flows invisible. Because spends cannot be correlated with the notes they consume, following value through the pool is impossible from public data alone. What remains observable is the perimeter: transactions entering a shielded pool (transparent to shielded) and leaving it (shielded to transparent) are visible with amounts and timestamps. Investigators therefore treat the pool interior as opaque and work the entry and exit points, where ordinary on-chain analysis still applies.

A note on terminology

Nullifiers belong to note-based privacy systems (Zcash-style). Monero’s ring signatures achieve a similar unlinkability goal by a different route — mixing the true spend with decoys — and do not publish nullifiers. When a product claims zero-knowledge privacy, checking whether an actual nullifier-style mechanism exists in its flow is one way to separate real cryptography from marketing.