01 — Proof system · Failure mode

Ignoring proof malleability in application logic

The application treats a proof or its hash as a unique identifier for deduplication, nonces or replay protection. Several deployed systems produce re-randomisable proofs, so a second valid proof of the same statement is trivially obtainable.

Mitigation

Never derive uniqueness from proof bytes. Bind it to constrained in-circuit values such as nullifiers, and canonicalise encodings on deserialisation.

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