03 — Auditing · Failure mode

Proof malleability

A valid proof can be transformed into a different valid proof for the same statement. Any system that treats a proof hash as a unique identifier — for deduplication, nonces or replay protection — breaks.

Mitigation

Never treat proof bytes as a unique identifier. Derive uniqueness from constrained in-circuit values such as nullifiers, and canonicalise encodings on deserialisation.

Cite this page
MarketComp (2026). Proof malleability. The ZK Field Manual (Version 1.3). MarketComp. https://zkpick.com/audit/failure-modes/proof-malleability/
@misc{zkfieldmanual-proof-malleability,
  title        = {Proof malleability — The ZK Field Manual},
  author       = {MarketComp},
  year         = {2026},
  version      = {1.3},
  howpublished = {\url{https://zkpick.com/audit/failure-modes/proof-malleability/}},
  note         = {Accessed: YYYY-MM-DD}
}