Ben je al achttien? Aan de ingang van een club, bij het verkopen van kleding via Vinted of wanneer we een pakket ophalen in het postpunt: steeds vaker moeten we onze identiteit of leeftijd bewijzen. Daarbij geven we doorgaans veel meer informatie prijs dan strikt noodzakelijk is. Een opkomende technologie, zero-knowledge proofs (ZKP’s), belooft daar verandering in te brengen. Grote bedrijven zoals Microsoft en TikTok zetten ZKP’s vandaag al in voor toepassingen rond privacy en veiligheid. Toch zijn ook deze systemen niet waterdicht. Arman Kolozyan ontdekte in zijn masterproef aan de Vrije Universiteit Brussel, uitgevoerd in samenwerking met Nokia Bell Labs, maar liefst vijftien kwetsbaarheden.
In een wereld die steeds meer digitaal draait, vragen online diensten ons alsmaar vaker om persoonlijke gegevens vrij te geven ter verificatie, vaak door onze identiteitskaart te uploaden of door ze manueel in te voeren. Voor gebruikers vormt dat een bedreiging van hun privacy: niemand wil bijvoorbeeld dat zijn identiteit gelinkt wordt aan een gokwebsite. Toch zijn zulke controles steeds vaker nodig, onder meer om minderjarigen te beschermen.
Zero-knowledge proofs (ZKP’s) bieden hier een oplossing. Het principe is eenvoudig maar krachtig: je kunt aantonen dat iets klopt, zonder daarbij extra informatie prijs te geven. Dankzij de wiskundige magie erachter blijven de gevoelige gegevens volledig verborgen. Deze technologie werd in 1985 bedacht als theoretisch concept, maar kende de laatste jaren een doorbraak naar concrete toepassingen. Zo kun je bewijzen dat je paspoort geldig is zonder verdere gegevens te onthullen: je scant simpelweg je ID op je telefoon en krijgt een bewijs terug, zonder dat een derde partij je gegevens te zien krijgt. Andere bekende voorbeelden zijn de leeftijdsverificatie in de datingapp Bumble en het recente gebruik van ZKP’s door de Belgische identiteitsapp itsme, die bedrijven toelaat enkel te verifiëren wat er op dat moment relevant is.
Bij zero-knowledge proofs zijn er altijd twee partijen: de prover, die een bewijs aanlevert, en de verifier, die dit bewijs controleert. Net bij die tweede stap schuilt het gevaar: het programmeren van de juiste controles is bijzonder moeilijk, en een kleine fout kan grote gevolgen hebben. Programmeerfouten zijn natuurlijk altijd riskant, maar in een veiligheidskritische context zoals deze kunnen ze ronduit catastrofaal zijn. Vergeet de verifier bijvoorbeeld een cruciale check uit te voeren, dan kan een vervalst bewijs toch worden aanvaard. Zo kan iemand met een nep-ID doen alsof die ergens recht op heeft, terwijl dat helemaal niet zo is. In toepassingen zoals cryptomunten, waarbij transacties anoniem worden gemaakt dankzij ZKP’s, kan zo’n fout zelfs leiden tot het verlies van honderden miljoenen euro’s. Denk maar aan iemand die een foutieve controle uitbuit om te doen alsof hij geld bezit dat hij eigenlijk niet heeft. Zo’n fout kan ook de deur openzetten voor datalekken: in plaats van enkel het noodzakelijke te bewijzen ("ik ben ouder dan 18"), kan er onbedoeld gevoelige informatie worden prijsgegeven (zoals naam of geboortedatum).
“Zero-knowledge proofs may be the future of private trade.”
Edward Snowden, klokkenluider en privacy-activist
Voor zijn onderzoek begon Kolozyan met een empirische studie op GitHub, het online platform waar programmeurs hun code publiek beschikbaar maken zodat anderen die kunnen gebruiken, verbeteren of controleren. Hij analyseerde welke programmeertalen daar vandaag het vaakst worden gebruikt om ZKP’s te schrijven. Nadat het landschap in kaart was gebracht, verdiepte hij zich in bestaande projecten om te onderzoeken welke veiligheidsproblemen er al eerder door programmeurs waren gerapporteerd. Op basis daarvan werd een formeel model ontwikkeld dat de basis vormde voor een categorisatie van zes soorten ZKP-specifieke kwetsbaarheden die tot nu toe nauwelijks aandacht kregen in de wetenschappelijke literatuur. Juist daarom zijn ze extra verraderlijk: veel ZKP-programmeurs kennen deze valkuilen niet, terwijl ze in de praktijk tot ernstige fouten kunnen leiden.
De impact van dit werk werd duidelijk toen de inzichten op de praktijk werden toegepast. Zo dook Kolozyan in de code van bekende namen zoals Microsoft en TikTok, en zelfs de app voor paspoortverificatie. Daarin identificeerde hij vijftien veiligheidsproblemen, die vervolgens op een verantwoordelijke manier aan de betrokken bedrijven werden gemeld. Hij lichtte ze niet enkel in over de problemen, maar reikte ook de oplossingen aan, waardoor ze deze meteen konden aanpakken. Een deel van deze toepassingen wordt vandaag al effectief gebruikt. Andere projecten zullen binnenkort wereldwijd worden uitgerold en door miljoenen mensen gebruikt worden.

De bedrijven erkenden daarom de impact van zijn bevindingen: Kolozyan kreeg er niet alleen een geldprijs voor, maar werkt binnenkort samen met TikTok aan een blogpost om deze inzichten verder te verspreiden. Ook zijn eerdere empirische studie naar de programmeertalen van ZKP’s kreeg weerklank: de resultaten verschenen in een ZKP-nieuwsbrief met meer dan vierduizend abonnees. Tot slot nodigde Self, het bedrijf achter de paspoortverificatie, hem in oktober uit naar San Francisco, waar hij zijn thesis zal presenteren en twee weken lang zal programmeren met internationale toptalenten.
Dit onderzoek toont nog maar eens aan dat elke nieuwe technologie, hoe indrukwekkend ook, onlosmakelijk verbonden is met veiligheidsrisico’s. Zeker wanneer ze in een beveiligingscontext worden toegepast, kan één kleine fout grote gevolgen hebben. Met de groeiende aandacht voor digitale privacy zullen zero-knowledge proofs binnenkort niet meer weg te denken zijn. Het is daarom belangrijk om al in de vroegste fases van ontwikkeling de juiste beveiligingen in te bouwen. Om ontwikkelaars daarbij te ondersteunen, zette Kolozyan alvast een eerste stap naar een geautomatiseerde tool die dergelijke kwetsbaarheden sneller kan opsporen, zonder menselijke tussenkomst. Dat deed hij door gekende analysetechnieken uit de wereld van "klassieke" programmeertalen te vertalen naar de context van ZKP’s. Zelfs grote spelers zoals Microsoft en Nokia hebben al interesse getoond in de verdere ontwikkeling van dit onderzoek. Momenteel werkt Kolozyan aan een wetenschappelijke publicatie over zijn werk, zodat andere onderzoekers en ontwikkelaars erop kunnen voortbouwen. Het blijft namelijk een uitdaging om zo'n tools voor ZKP’s schaalbaar te maken, zodat ook grote programma's binnen een redelijke tijd geanalyseerd kunnen worden.
0xPARC. zk-bug-tracker. 2024. url: https://github.com/0xPARC/zk-bug-tracker (visited on 18 August 2025)
0xPARC. zk-bug-tracker: #18 EY Nightfall - Missing Nullifier Range Check. 2024. url: https://github.com/0xPARC/zk-bug-tracker#18-ey-nightfall-missing-nullif… (visited on 30 April 2025)
0xPARC. zk-bug-tracker: #6 Aztec 2.0 - Missing Bit-Length Check / Nondeterministic Nullifier. 2024. url: https://github.com/0xPARC/zk-bug-tracker#6-aztec-20-missing-bit-length-… (visited on 30 April 2025)
0xPARC. zk-bug-tracker: #9 A16Z ZKDrops - Missing Nullifier Range Check. 2024. url: https://github.com/0xPARC/zk-bug-tracker#9-a16z-zkdrops-missingnullifie… (visited on 30 April 2025)
Signal Tags. iden3. 2024. url: https://docs.circom.io/circom-language/tags/ (visited on 19 May 2025)
Circom Language Documentation. iden3. 2025. url: https://docs.circom.io/circom-language/signals/#types-of-signal-assignm… (visited on 19 May 2025)
LLZK-lib Documentation: Project Overview. Veridise. 2025. url: https://veridise.github.io/llzk-lib/main/overview.html (visited on 20 May 2025)
Self Docs. Self Labs. 2025. url: https://docs.self.xyz (visited on 19 August 2025)
Elvira Albert et al. “Distilling Constraints in Zero-Knowledge Protocols”. In Proceedings of the Computer Aided Verification (CAV). Ed. by Sharon Shoham and Yakir Vizel. 2022, pp. 430–443
Aligned. “Aligned.co Projects $10 Billion Market for Web3 Zero-Knowledge Proof Generation by the Year 2030”. In Aligned Blog (2023). url: https://www.aligned.co/post/10-billion-revenue-market-size-by-2030 (visited on 20 May 2025)
Nada Amin et al. “LURK: Lambda, the Ultimate Recursive Knowledge”. In Proceedings of the ACM on Programming Languages 7.ICFP (2023). doi: 10.1145/3607839
Arasu Arun, Srinath Setty, and Justin Thaler. “Jolt: SNARKs for Virtual Machines via Lookups”. In Proceedings of the Advances in Cryptology (EUROCRYPT). Ed. by Marc Joye and Gregor Leander. 2024, pp. 3–33
Aztec Network. AZTEC CRS: The Biggest MPC Setup in History Has Successfully Finished. 2020. url: https://aztec.network/blog/aztec-crs-the-biggestmpc-setup-in-history-ha… (visited on 17 May 2025)
Aztec Labs. Introducing Noir: The Universal Language of Zero-Knowledge. 2022. url: https://aztec.network/blog/introducing-noir-the-universal-language-of-z… (visited on 1 May 2025)
Foteini Baldimtsi et al. “zkLogin: Privacy-Preserving Blockchain Authentication with Existing Credentials”. In Proceedings of the ACM SIGSAC Conference on Computer and Communications Security (CCS). 2024, pp. 3182–3196. doi: 10.1145/3658644.3690356
Dan Boneh and Binyi Chen. LatticeFold: A Lattice-based Folding Scheme and its Applications to Succinct Proof Systems. Cryptology ePrint Archive. 2024
Dan Boneh and Binyi Chen. LatticeFold+: Faster, Simpler, Shorter Lattice-Based Folding for Succinct Proof Systems. Cryptology ePrint Archive. 2025
Marta Bellés-Muñoz et al. “Circom: A Circuit Description Language for Building Zero-Knowledge Applications”. In IEEE Transactions on Dependable and Secure Computing 20.6 (2023), pp. 4733–4751. doi: 10.1109/TDSC.2022.3232813
Eli Ben Sasson et al. “Zerocash: Decentralized Anonymous Payments from Bitcoin”. In Proceedings of the 35th IEEE Symposium on Security and Privacy (SP). 2014, pp. 459–474. doi: 10.1109/SP.2014.36
Eli Ben-Sasson et al. “Succinct non-interactive zero knowledge for a von Neumann architecture”. In Proceedings of the 23rd USENIX Conference on Security Symposium (USENIX Security). 2014, pp. 781–796
Juan Benet et al. Filecoin: A Decentralized Storage Network. White Paper. Protocol Labs, 2017
Eli Ben-Sasson et al. Scalable, transparent, and post-quantum secure computational integrity. Cryptology ePrint Archive. 2018
Eli Ben-Sasson et al. “Scalable Zero Knowledge with No Trusted Setup”. In Proceedings of the Advances in Cryptology (CRYPTO). Ed. by Alexandra Boldyreva and Daniele Micciancio. 2019, pp. 701–732
Sean Bowe, Jack Grigg, and Daira Hopwood. Recursive Proof Composition without a Trusted Setup. Cryptology ePrint Archive. 2019
Jeremy Bruestle, Paul Gafni, and RISC Zero Team. RISC Zero zkVM: Scalable, Transparent Arguments of RISC-V Integrity. White Paper. RISC Zero, 2023
Dan Boneh. ZKP MOOC Lecture 2: Overview of Modern SNARK Constructions. 2023. url: https://www.youtube.com/watch?v=bGEXYpt3sj0 (visited on 17 May 2025)
Sean Bowe et al. “ZEXE: Enabling Decentralized Private Computation”. In Proceedings of the 41st IEEE Symposium on Security and Privacy (SP). 2020, pp. 947– 964. doi: 10.1109/SP40000.2020.00050
Mihir Bellare and Phillip Rogaway. “Random oracles are practical: a paradigm for designing efficient protocols”. In Proceedings of the 1st ACM Conference on Computer and Communications Security (CCS). 1993, pp. 62–73. doi: 10.1145/168588.168596
Clark Barrett, Aaron Stump, and Cesare Tinelli. “The SMT-LIB Standard – Version 2.0”. In Proceedings of the 8th International Workshop on Satisfiability Modulo Theories (SMT). 2010
Bruno Buchberger. “An algorithm for finding the basis elements of the residue class ring of a zero dimensional polynomial ideal”. In Journal of Symbolic Computation 41.3 (2006), pp. 475–511. doi: 10.1016/j.jsc.2005.09.007
Benedikt Bünz et al. “Bulletproofs: Short Proofs for Confidential Transactions and More”. In Proceedings of the 39th IEEE Symposium on Security and Privacy (SP). 2018, pp. 315–334. doi: 10.1109/SP.2018.00020
Vitalik Buterin. Quadratic Arithmetic Programs: from Zero to Hero. 2016. url: https://medium.com/@VitalikButerin/quadratic-arithmetic-programsfrom-ze… (visited on 18 May 2025)
Stefanos Chaliasos, Imam Al-Fath, and Alastair Donaldson. “Towards Fuzzing Zero- Knowledge Proof Circuits (Short Paper)”. In Proceedings of the 34th ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA). 2025, pp. 98–104. doi: 10.1145/3713081.3731718
Stefanos Chaliasos, Imam Al-Fath, and Alastair Donaldson. Towards Fuzzing Zero- Knowledge Proof Circuits (Short Paper). 2025. arXiv: 2504.14881
Patrick Cousot and Radhia Cousot. “Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints”. In Proceedings of the Conference Record of the Fourth ACM Symposium on Principles of Programming Languages (POPL). 1977, pp. 238–252. doi: 10.1145/512950.512973
T. Y. Chen, S. C. Cheung, and S. M. Yiu. Metamorphic Testing: A New Approach for Generating Next Test Cases. 2020. arXiv: 2002.12543
CertiK. Advanced Formal Verification of Zero Knowledge Proof Blockchains. 2024. url: https://www.certik.com/resources/blog/advanced-formal-verificationof-ze… (visited on 10 May 2025)
Stefanos Chaliasos et al. “SoK: What Don’t We Know? Understanding Security Vulnerabilities in SNARKs”. In Proceedings of the 33rd USENIX Conference on Security Symposium (USENIX Security). 2024, pp. 3855–3872
Stefanos Chaliasos. zkBugs. Tech. rep. zkSecurity, 2025. url: https://bugs.zksecurity.xyz (visited on 26 May 2025)
Hao Chen et al. AC4: Algebraic Computation Checker for Circuit Constraints in ZKPs. 2024. arXiv: 2403.15676
Alessandro Chiesa et al. “Marlin: Preprocessing zkSNARKs with Universal and Updatable SRS”. In Proceedings of the Advances in Cryptology (EUROCRYPT). Ed. by Anne Canteaut and Yuval Ishai. 2020, pp. 738–768
Collin Chin et al. Leo: A Programming Language for Formally Verified, Zero- Knowledge Applications. Cryptology ePrint Archive. 2021
Alessandro Coglio et al. Compositional Formal Verification of Zero-Knowledge Circuits. Cryptology ePrint Archive. 2023
Cointelegraph. Manta Network Conducts Record-Breaking Trusted Setup Ceremony, 4,000+ contribute. 2023. url: https://cointelegraph.com/news/manta-networkconducts-record-breaking-tr… (visited on 17 May 2025)
ZKsync Community. ZKsync Documentation. https://docs.zksync.io. (visited on 19 August 2025)
Michael Connor. Disclosure of recent vulnerabilities. January 11, 2022. url: https://hackmd.io/@aztec-network/disclosure-of-recent-vulnerabilities (visited on 25 May 2025)
ConsenSys. gnark Documentation. 2025. url: https://docs.gnark.consensys.io/overview (visited on 1 May 2025)
Iana Corcimariuc. The LEO Compiler of Aleo. 2024. url: https://medium.com/@ICorcimariuc/the-leo-compiler-of-aleo-631e6f086106 (visited on 9 May 2025)
Oana Ciobotaru, Maxim Peter, and Vesselin Velichkov. The Last Challenge Attack: Exploiting a Vulnerable Implementation of the Fiat-Shamir Transform in a KZGbased SNARK. Cryptology ePrint Archive. 2024
Stefanos Chaliasos and Chenyang Yu. Reproducing and Exploiting ZK Circuit Vulnerabilities. Tech. rep. zkSecurity, 2024. url: https://blog.zksecurity.xyz/posts/zkbugs/(visited on 26 May 2025)
Fredrik Dahlgren. It pays to be Circomspect. Trail of Bits. 2022. url: https://blog.trailofbits.com/2022/09/15/it-pays-to-be-circomspect/(visited on 3 May 2025)
Quang Dao et al. “Weak Fiat-Shamir Attacks on Modern Proof Systems ”. In Proceedings of the 44th IEEE Symposium on Security and Privacy (SP). 2023, pp. 199– 216. doi: 10.1109/SP46215.2023.10179408
Trisha Datta, Binyi Chen, and Dan Boneh. “VerITAS: Verifying Image Transformations at Scale ”. In Proceedings of the 46th IEEE Symposium on Security and Privacy (SP). 2025, pp. 4606–4623. doi: 10.1109/SP61157.2025.00097
Electric Coin Company. Halo 2 Book. 2023. url: https://zcash.github.io/halo2/(visited on 1 May 2025)
Jacob Eberhardt and Stefan Tai. “ZoKrates - Scalable Privacy-Preserving Off-Chain Computations”. In Proceedings of the IEEE International Conference on Internet of Things (iThings) and IEEE Green Computing and Communications (GreenCom) and IEEE Cyber, Physical and Social Computing (CPSCom) and IEEE Smart Data (SmartData). 2018, pp. 1084–1091. doi: 10.1109/Cybermatics_2018.2018.00199
Privacy Scaling Explorations. Zkopru Trusted Setup Completed. 2021. url: https://medium.com/privacy-scaling-explorations/zkopru-trusted-setup-co… (visited on 17 May 2025)
Denis Firsov and Benjamin Livshits. The Ouroboros of ZK: Why Verifying the Verifier Unlocks Longer-Term ZK Innovation. Cryptology ePrint Archive. 2024
Amos Fiat and Adi Shamir. “How To Prove Yourself: Practical Solutions to Identification and Signature Problems”. In Proceedings of the Advances in Cryptology (CRYPTO). Ed. by Andrew M. Odlyzko. 1987, pp. 186–194
Yongming Fan, Yuquan Xu, and Christina Garman. “SNARKProbe: An Automated Security Analysis Framework for zkSNARK Implementations”. In Proceedings of the Applied Cryptography and Network Security (ACNS). Ed. by Christina Pöpper and Lejla Batina. 2024, pp. 340–372
Rosario Gennaro et al. “Quadratic Span Programs and Succinct NIZKs without PCPs”. In Proceedings of the Advances in Cryptology (EUROCRYPT). Ed. by Thomas Johansson and Phong Q. Nguyen. 2013, pp. 626–645
Shafi Goldwasser, Yael Tauman Kalai, and Guy N. Rothblum. “Delegating Computation: Interactive Proofs for Muggles”. In Journal of the Association for Computing Machinery 62.4 (2015). doi: 10.1145/2699436
S Goldwasser, S Micali, and C Rackoff. “The knowledge complexity of interactive proof-systems”. In Proceedings of the 17th Annual ACM Symposium on Theory of Computing (STOC). 1985, pp. 291–304. doi: 10.1145/22145.22178
Oded Goldreich, Silvio Micali, and Avi Wigderson. “Proofs that yield nothing but their validity or all languages in NP have zero-knowledge proof systems”. In Journal of the Association for Computing Machinery 38.3 (1991), pp. 690–728. doi: 10.1145/116825.116852
Shafi Goldwasser. ZKP MOOC Lecture 1: Introduction and History of ZKP. 2023. url: https://www.youtube.com/watch?v=uchjTIlPzFo (visited on 11 May 2025)
Pranav Gaddamadugu and Provable. The Leo Programming Language. 2025. url: https://docs.leo-lang.org/leo (visited on 9 May 2025)
Lior Goldberg, Shahar Papini, and Michael Riabzev. Cairo - a Turing-complete STARK-friendly CPU architecture. Cryptology ePrint Archive. 2021
Jack Grigg. bellman: zk-SNARK library. 2024. url: https://github.com/zkcrypto/bellman (visited on 13 July 2025)
Jens Groth. “On the Size of Pairing-Based Non-interactive Arguments”. In Proceedings of the Advances in Cryptology (EUROCRYPT). Ed. by Marc Fischlin and Jean-Sébastien Coron. 2016, pp. 305–326
Brian Gu et al. Auditing Report for circom-bigint (circomlib). Tech. rep. 0xPARC Community, Ethereum Foundation, Veridise Inc., 2022. url: https://veridise.com/wp-content/uploads/2023/02/VAR-circom-bigint.pdf (visited on 26 May 2025)
Ariel Gabizon, Zachary J. Williamson, and Oana Ciobotaru. PLONK: Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge. Cryptology ePrint Archive. 2019
Tjaden Hess. “Tag, you’re it: Signal tagging in Circom”. In Trail of Bits Blog (2024). url: https://blog.trailofbits.com/2024/01/02/tag-youre-it-signaltagging-in-c…(visited on 19 May 2025)
Thomas Hader, Daniela Kaufmann, and Laura Kovacs. “SMT Solving over Finite Field Arithmetic”. In EPiC Series in Computing 94 (2023), pp. 218–238. doi: 10.29007/4n6w
Gérard Huet, Gilles Kahn, and Christine Paulin-Mohring. “The Coq Proof Assistant: A Tutorial”. In Rapport Technique 178 (1997), p. 113
Thomas Hader and Alex Ozdemir. An SMT-LIB Theory of Finite Fields. 2024. arXiv: 2407.21169
Christoph Hochrainer et al. Fuzzing Processing Pipelines for Zero-Knowledge Circuits. 2024. arXiv: 2411.02077
Daira-Emma Hopwood et al. Zcash Protocol Specification. Tech. rep. Electric Coin Company, 2024. url: https://zips.z.cash/protocol/protocol.pdf (visited on 11 May 2025)
Miguel Isabel, Clara Rodríguez-NéLuñnez, and Albert Rubio. “Scalable Verification of Zero-Knowledge Protocols”. In Proceedings of the 45th IEEE Symposium on Security and Privacy (SP). 2024, pp. 1794–1812. doi: 10.1109/SP54263.2024.00133
Jinan Jiang et al. “ConsCS: Effective and Efficient Verification of Circom Circuits ”. In Proceedings of the 47th IEEE/ACM International Conference on Software Engineering (ICSE). 2025, pp. 737–737. doi: 10.1109/ICSE55347.2025.00200
Koh Wei Jie. “Private voting and whistleblowing on Ethereum using Semaphore”. In Medium (2019). url: https://weijiek.medium.com/private-voting-andwhistleblowing-in-ethereum… (visited on 20 May 2025)
Koh Wei Jie. “To Mixers and Beyond: presenting Semaphore, a privacy gadget built on Ethereum”. In Medium (2019). url: https://medium.com/coinmonks/tomixers-and-beyond-presenting-semaphore-a… (visited on 20 May 2025)
M. Kaufmann and J.S. Moore. “An industrial strength theorem prover for a logic based on Common Lisp”. In IEEE Transactions on Software Engineering 23.4 (1997), pp. 203–213. doi: 10.1109/32.588534
Arman Kolozyan. Empirical Study of the Prominence of Zero-Knowledge Proof (ZKP) Languages. 2025. url: https://github.com/ArmanKolozyan/ZKP-Languages (visited on 13 July 2025)
Dmitry Khovratovich, Ron D. Rothblum, and Lev Soukhanov. How to Prove False Statements: Practical Attacks on Fiat-Shamir. Cryptology ePrint Archive. 2025
Aniket Kate, Gregory M. Zaverucha, and Ian Goldberg. “Constant-Size Commitments to Polynomials and Their Applications”. In Proceedings of the Advances in Cryptology (ASIACRYPT). Ed. by Masayuki Abe. 2010, pp. 177–194
C. Lattner and V. Adve. “LLVM: a compilation framework for lifelong program analysis and transformation”. In Proceedings of the International Symposium on Code Generation and Optimization (CGO). 2004, pp. 75–86. doi: 10.1109/CGO. 2004.1281665
Polygon Labs. Polygon zkEVM Documentation. https://docs.polygon.technology/zkEVM/. (visited on 19 August 2025)
Succinct Labs. SP1 Docs. 2025. url: https://docs.succinct.xyz/docs/sp1/introduction (visited on 19 May 2025)
Zihao Li et al. “fAmulet: Finding Finalization Failure Bugs in Polygon zkRollup”. In Proceedings of the ACM SIGSAC Conference on Computer and Communications Security (CCS). 2024, pp. 971–985. doi: 10.1145/3658644.3690243
Junrui Liu et al. “Certifying Zero-Knowledge Circuits with Refinement Types ”. In Proceedings of the 45th IEEE Symposium on Security and Privacy (SP). 2024, pp. 1741–1759. doi: 10.1109/SP54263.2024.00078
Ian Miers et al. “Zerocoin: Anonymous Distributed E-Cash from Bitcoin”. In Proceedings of the 34th IEEE Symposium on Security and Privacy (SP). 2013, pp. 397– 411. doi: 10.1109/SP.2013.34
Mir Protocol. Plonky2 Documentation. 2023. url: https://docs.rs/crate/plonky2/latest/source/plonky2.pdf (visited on 1 May 2025)
Pratyush Mishra. arkworks: A Rust Ecosystem for Programming zkSNARKs. Talk given at RWC 2022. 2022
Anders Møller and Michael I. Schwartzbach. Static Program Analysis. Aarhus University, 2025
Anca Nitulescu. zk-SNARKs: A Gentle Introduction. Tech. rep. École Normale Supérieure, 2020
Valeria Nikolaenko and Sam Ragsdale. On-Chain Trusted Setup Ceremony. 2022. url: https://a16zcrypto.com/posts/article/on-chain-trusted-setupceremony/(visited on 17 May 2025)
O(1) Labs. Snarky: OCaml Library for Writing SNARKs. 2025. url: https://github.com/o1-labs/snarky (visited on 1 May 2025)
Alex Ozdemir, Fraser Brown, and Riad S. Wahby. “CirC: Compiler infrastructure for proof systems, software verification, and more”. In Proceedings of the 43rd IEEE Symposium on Security and Privacy (SP). 2022, pp. 2248–2266. doi: 10.1109/SP46214.2022.9833782
Alex Ozdemir and Pratyush Mishra. ZKP MOOC Lecture 3: Libraries and Compilers to build ZKP. 2023. url: https://www.youtube.com/watch?v=UpRSaG6iuks (visited on 13 July 2025)
Ceyhun Onur and Arda Yurdakul. “ElectAnon: A Blockchain-based, Anonymous, Robust, and Scalable Ranked-choice Voting Protocol”. In Distributed Ledger Technologies 2.3 (2023). doi: 10.1145/3598302
Alex Ozdemir et al. “Bounded Verification for Finite-Field-Blasting”. In Proceedings of the Computer Aided Verification (CAV). Ed. by Constantin Enea and Akash Lal. 2023, pp. 154–175
Alex Ozdemir et al. “Satisfiability Modulo Finite Fields”. In Proceedings of the Computer Aided Verification (CAV). Ed. by Constantin Enea and Akash Lal. 2023, pp. 163–186
Alex Ozdemir et al. “Split Gröbner Bases for Satisfiability Modulo Finite Fields”. In Proceedings of the Computer Aided Verification (CAV). Ed. by Arie Gurfinkel and Vijay Ganesh. 2024, pp. 3–25
Alex Ozdemir. CVC4: finite-field branch (ff). 2022. url: https://github.com/alex-ozdemir/CVC4/tree/ff (visited on 6 May 2025)
Shankara Pailoor et al. “Automated Detection of Under-Constrained Circuits in Zero-Knowledge Proofs”. In Proceedings of the ACM on Programming Languages 7.PLDI (2023). doi: 10.1145/3591282
Shankara Pailoor. “Veridise Secures Ethereum Foundation Grant to Develop LLZK: A New Intermediate Representation (IR) for ZK Languages”. In Medium (2025). url: https://medium.com/veridise/veridise-secures-ethereum-foundationgrant-t… (visited on 20 May 2025)
Mike Papadakis et al. “Chapter Six - Mutation Testing Advances: An Analysis and Survey”. In Advances in Computers. Ed. by Atif M. Memon. Vol. 112. Elsevier, 2019, pp. 275–378. doi: 10.1016/bs.adcom.2018.03.015
Bryan Parno et al. “Pinocchio: Nearly Practical Verifiable Computation”. In Proceedings of the 34th IEEE Symposium on Security and Privacy (SP). 2013, pp. 238– 252. doi: 10.1109/SP.2013.47
Shankara Pailoor, Kostas Ferles, and Jon Stephens. A New IR for ZK Circuit Languages. Grant Proposal. Veridise, 2025. url: https://drive.google.com/file/d/1tAIjAPJX5cGZT_ASff7A2OiZaEgeWUx8/view (visited on 20 May 2025)
Clara Rodríguez. tagged CircomLib. 2023. url: https://github.com/costa-group/circomlib/tree/only_adding_tags (visited on 16 July 2025)
Clara Rodríguez. tagged ECDSA operations in Circom. 2023. url: https://github.com/costa-group/circom-ecdsa (visited on 16 July 2025)
Anna Rose, Howard Wu, and Alex Pruden. The Evolution of Aleo. Zero Knowledge Podcast, Episode 307. 2024. url: https://zeroknowledge.fm/podcast/307/(visited on 9 May 2025)
Xavier Rival and Kwangkeun Yi. Introduction to Static Analysis: An Abstract Interpretation Perspective. MIT Press, 2020
SCIPR Lab. libsnark: C++ library for zkSNARKs. 2025. url: https://github.com/scipr-lab/libsnark (visited on 13 July 2025)
Srinath Setty. “Spartan: Efficient and General-Purpose zkSNARKs Without Trusted Setup”. In Proceedings of the Advances in Cryptology (CRYPTO). 2020, pp. 704– 737. doi: 10.1007/978-3-030-56877-1_25
Jon Stephens, Hanzhi Liu, and Xiangan He. Auditing Report for UniRep Protocol. Tech. rep. Veridise Inc., 2023. url: https://developer.unirep.io/assets/files/VAR_Unirep-fd2248829d28ad53c4c… (visited on 26 May 2025)
Haochen Sun, Jason Li, and Hongyang Zhang. zkLLM: Zero Knowledge Proofs for Large Language Models. 2024. arXiv: 2404.16109
Fatemeh Heidari Soureshjani et al. Automated Analysis of Halo2 Circuits. Cryptology ePrint Archive. 2023
Roman Storm and Roman Semenov. Tornado Cash: A Decentralized, Non-Custodial Privacy Solution on Ethereum. White Paper. Tornado.Cash, 2019
Alan Stapelberg. Opening up “Zero-Knowledge Proof” technology to promote privacy in age assurance. Google. 2025. url: https://blog.google/technology/safety-security/opening-up-zero-knowledg…(visited on 19 August 2025)
Samuel Steffen et al. “ZeeStar: Private Smart Contracts by Homomorphic Encryption and Zero-knowledge Proofs”. In Proceedings of the 43rd IEEE Symposium on Security and Privacy (SP). 2022, pp. 179–197. doi: 10.1109/SP46214 . 2022 . 9833732
Srinath Setty, Justin Thaler, and Riad Wahby. Customizable constraint systems for succinct arguments. Cryptology ePrint Archive. 2023
Grzegorz Swirski. Implementing Trusted Setup Ceremony for Ethereum’s EIP-4844. 2024. url: https://reilabs.io/blog/implementing-trusted-setup-ceremonyfor-ethereum… (visited on 17 May 2025)
Hideaki Takahashi et al. zkFuzz: Foundation and Framework for Effective Fuzzing of Zero-Knowledge Circuits. 2025. arXiv: 2504.11961
Team RareSkills. Circom Language Tutorial with circomlib Walkthrough. 2023. url: https://www.rareskills.io/post/circom-tutorial (visited on 30 April 2025)
Justin Thaler. “Proofs, Arguments, and Zero-Knowledge”. In Foundations and Trends® in Privacy and Security 4.2-4 (2022), pp. 117–660. doi: 10.1561/3300000030
Tornado Cash. Tornado.cash got hacked. By us. October 12, 2019. url: https://tornado-cash.medium.com/tornado-cash-got-hacked-by-us-b1e012a3c… (visited on 25 May 2025)
Trail of Bits. Analysis passes. 2023. url: https://github.com/trailofbits/circomspect/blob/main/doc/analysis_passe… (visited on 3 May 2025)
Franklyn Wang. Ecne: Automated Verification of ZK Circuits. 2022. url: https://0xparc.org/blog/ecne (visited on 6 May 2025)
Michael Walfish and Andrew J. Blumberg. “Verifying computations without reexecuting them”. In Communications of the ACM 58.2 (2015), pp. 74–84. doi: 10.1145/2641562
Jacob Weightman. RISC Zero’s Path to The First Formally Verified RISC-V zkVM. 2025. url: https://risczero.com/blog/RISCZero-formally-verified-zkvm (visited on 9 May 2025)
Hongbo Wen et al. “Practical Security Analysis of Zero-Knowledge Proof Circuits”. In Proceedings of the 33rd USENIX Conference on Security Symposium (USENIX Security). 2024, pp. 1471–1487
Dongwei Xiao et al. “MTZK: Testing and Exploring Bugs in Zero-Knowledge (ZK) Compilers”. In Proceedings of the 32nd Annual Network and Distributed System Security Symposium (NDSS). 2025
Zhibo Xing et al. “Zero-Knowledge Proof-Based Verifiable Decentralized Machine Learning in Communication Network: A Comprehensive Survey”. In IEEE Communications Surveys and Tutorials (2025). doi: 10.1109/comst.2025.3561657
yAcademy Auditors. yAcademy Spartan-ecdsa Review. Electi Security. October 4, 2023. url: https://github.com/electisec/spartan-ecdsa-audit-report#1-high---input-… (visited on 26 May 2025)
Zcash. halo2 developer tools. url: https://zcash.github.io/halo2/user/devtools.html (visited on 10 August 2025)
Fan Zhang et al. “DECO: Liberating Web Data Using Decentralized Oracles for TLS”. In Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security (CCS). 2020, pp. 1919–1938. doi: 10.1145/3372297. 3417239