---
title: "Ignoring proof malleability in application logic"
description: "The application treats a proof or its hash as a unique identifier for deduplication, nonces or replay protection."
type: "failure-mode"
url: "https://zkpick.com/proof-systems/failure-modes/ignoring-proof-malleability-in-application-logic/"
section: "01 Choosing a proof system"
authors:
  - "MarketComp"
publisher: "MarketComp"
version: "1.3"
updated: "2026-09-12"
license: "CC-BY-4.0"
json: "https://zkpick.com/data/proof-systems/failure-modes/ignoring-proof-malleability-in-application-logic.json"
---

*By MarketComp. Updated 2026-09-12. Version 1.3. CC BY 4.0.*

# 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.
