Skip to content
Blockchain

Why does a missing constraint in my ZK circuit survive five separate audits?

84

Opportunité

ZK circuits can contain constraints that are syntactically valid but logically incomplete, leaving the witness underconstrained so an attacker can construct a fake proof the verifier accepts. The Zcash Orchard circuit had exactly this bug, disclosed in June 2026 after sitting undetected for four years through multiple professional audits. Existing static analysis tools catch simple cases but cannot prove completeness over a full production circuit. Fuzzing finds individual bugs but generates no soundness guarantee. No workflow in standard use today can tell you, before deployment, that your circuit has no underconstrained witness.

Pourquoi c'est important

A single missing constraint is enough to let an attacker mint value from nothing, and no standard pre-deployment workflow gives a completeness guarantee over a full production circuit.

Comment j'évalue l'opportunité

Le Score d'Opportunité est mon évaluation personnelle, pas une mesure : l'intensité de la douleur, sa fréquence et le peu de solutions qui existent aujourd'hui. Plus il est élevé, plus je pense que le problème vaut la peine d'être résolu.

Gravité9/10

L'intensité de la douleur qu'il provoque lorsqu'il se manifeste.

Fréquence6/10

La fréquence à laquelle les gens y sont réellement confrontés.

Espace libre8/10

Le peu de bons outils qui existent pour y remédier aujourd'hui.

D'autres problèmes qui méritent d'être résolus