Papers
Topics
Authors
Recent
2000 character limit reached

Clap: a Semantic-Preserving Optimizing eDSL for Plonkish Proof Systems (2405.12115v2)

Published 20 May 2024 in cs.CR

Abstract: Plonkish is a popular circuit format for developing zero-knowledge proof systems that powers a number of major projects in the blockchain space, responsible for holding billions of dollars and processing millions of transactions per day. These projects, including zero-knowledge rollups, rely on highly hand-optimized circuits whose correctness comes at the cost of time-consuming testing and auditing. In this paper, we present Clap, the first Rust eDSL with a proof system agnostic circuit format, facilitating extensibility, automatic optimizations, and formal assurances for the resultant constraint system. Clap casts the problem of producing Plonkish constraint systems and their witness generators as a semantic-preserving compilation problem. Soundness and completeness of the transformation guarantees the absence of subtle bugs caused by under- or over-constraining. Our experimental evaluation shows that its automatic optimizations achieve better performance compared to manual circuit optimization. The optimizer can also be used to automatically derive custom gates from circuit descriptions.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (27)
  1. A verified algebraic representation of cairo program execution. In Proceedings of the 11th ACM SIGPLAN International Conference on Certified Programs and Proofs, pages 153–165, Philadelphia PA USA, January 2022. ACM.
  2. New optimization techniques for PlonK’s arithmetization, 2022. Publication info: Preprint. MINOR revision.
  3. Aztec. Noir Language, April 2024.
  4. Recursive Proof Composition without a Trusted Setup, 2019. Publication info: Preprint. MINOR revision.
  5. Circom: A Circuit Description Language for Building Zero-Knowledge Applications. IEEE Transactions on Dependable and Secure Computing, 20(6):4733–4751, November 2023. Conference Name: IEEE Transactions on Dependable and Secure Computing.
  6. Scalable, transparent, and post-quantum secure computational integrity, 2018. Publication info: Preprint. MINOR revision.
  7. HyperPlonk: Plonk with Linear-Time Prover and High-Degree Custom Gates. In Carmit Hazay and Martijn Stam, editors, Advances in Cryptology - EUROCRYPT 2023 - 42nd Annual International Conference on the Theory and Applications of Cryptographic Techniques, Lyon, France, April 23-27, 2023, Proceedings, Part II, volume 14005 of Lecture Notes in Computer Science, pages 499–530. Springer, 2023.
  8. SoK: What don’t we know? Understanding Security Vulnerabilities in SNARKs. CoRR, abs/2402.15293, 2024. arXiv: 2402.15293.
  9. Leo: A Programming Language for Formally Verified, Zero-Knowledge Applications. IACR Cryptol. ePrint Arch., page 651, 2021.
  10. ZoKrates - Scalable Privacy-Preserving Off-Chain Computations. In 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), iThings/GreenCom/CPSCom/SmartData 2018, Halifax, NS, Canada, July 30 - August 3, 2018, pages 1084–1091. IEEE, 2018.
  11. Poseidon2: A Faster Version of the Poseidon Hash Function. In Nadia El Mrabet, Luca De Feo, and Sylvain Duquesne, editors, Progress in Cryptology - AFRICACRYPT 2023, pages 177–203, Cham, 2023. Springer Nature Switzerland.
  12. Cairo – a Turing-complete STARK-friendly CPU architecture. 2021.
  13. Proposal: The Turbo-PLONK program syntax for specifying SNARK programs, 2019.
  14. plookup: A simplified polynomial protocol for lookup tables, 2020. Publication info: Preprint. MINOR revision.
  15. PLONK: Permutations over Lagrange-bases for Oecumenical Noninteractive arguments of Knowledge, 2019. Publication info: Preprint.
  16. RedShift: Transparent SNARKs from List Polynomial Commitments. In Proceedings of the 2022 ACM SIGSAC Conference on Computer and Communications Security, pages 1725–1737, Los Angeles CA USA, November 2022. ACM.
  17. Certifying Zero-Knowledge Circuits with Refinement Types. IACR Cryptol. ePrint Arch., page 547, 2023.
  18. Matter Labs. Boojum proving system, 2023.
  19. Mina. o1-js, April 2024.
  20. CirC: Compiler infrastructure for proof systems, software verification, and more. In 2022 IEEE Symposium on Security and Privacy (SP), pages 2248–2266, San Francisco, CA, USA, May 2022. IEEE.
  21. Bounded Verification for Finite-Field-Blasting - In a Compiler for Zero Knowledge Proofs. In Constantin Enea and Akash Lal, editors, Computer Aided Verification - 35th International Conference, CAV 2023, Paris, France, July 17-22, 2023, Proceedings, Part III, volume 13966 of Lecture Notes in Computer Science, pages 154–175. Springer, 2023.
  22. Automated Detection of Under-Constrained Circuits in Zero-Knowledge Proofs. Proc. ACM Program. Lang., 7(PLDI):1510–1532, 2023.
  23. Polygon Zero. Plonky2, September 2022.
  24. Srinath Setty. Spartan: Efficient and General-Purpose zkSNARKs Without Trusted Setup. In Daniele Micciancio and Thomas Ristenpart, editors, Advances in Cryptology – CRYPTO 2020, pages 704–737, Cham, 2020. Springer International Publishing.
  25. Automated Analysis of Halo2 Circuits, 2023. Publication info: Published elsewhere. Satisfiability Modulo Theories 2023 (SMT 2023).
  26. Trail of Bits. Circomspect, April 2024. original-date: 2022-05-27T13:26:28Z.
  27. ZCash. Halo2, 2022.

Summary

We haven't generated a summary for this paper yet.

Whiteboard

Open Problems

We haven't generated a list of open problems mentioned in this paper yet.

Continue Learning

We haven't generated follow-up questions for this paper yet.

Collections

Sign up for free to add this paper to one or more collections.

Tweets

Sign up for free to view the 6 tweets with 46 likes about this paper.