Why does a missing constraint in my ZK circuit survive five separate audits?
Kans
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.
Waarom het belangrijk is
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.
Hoe ik de kans beoordeel
De Opportunity Score is mijn eigen inschatting, geen meting: hoe ernstig het pijn doet, hoe vaak het toeslaat, en hoe weinig er vandaag de dag bestaat om het op te lossen. Hoger betekent dat ik denk dat het meer de moeite waard is om te bouwen.
Hoeveel pijn het veroorzaakt wanneer het zich voordoet.
Hoe vaak mensen er daadwerkelijk tegenaan lopen.
Hoe weinig goede tools er vandaag de dag voor bestaan.
Meer problemen die het oplossen waard zijn
Waarom kan ik mijn solvabiliteit niet bewijzen zonder mijn saldo te tonen?
BlockchainWaarom is geld verplaatsen tussen chains nog steeds angstaanjagender dan het vroege internet?
BlockchainWaarom betekent compliance nog steeds een PDF en een schietgebed?
BlockchainWaarom is zelfbeheer nog steeds een keuze tussen je sleutels verliezen en een bedrijf vertrouwen?
BlockchainWaarom vereist het tokeniseren van een reëel actief nog steeds tien tussenpersonen?
BlockchainWaarom kan een stablecoin niemand betalen zonder internetverbinding?