zkSDK: Streamlining zero-knowledge proof development through automated trace-driven ZK-backend selection
William Law

TL;DR
zkSDK is a modular framework that simplifies zero-knowledge proof development by automatically selecting the most suitable ZK backend based on program profiling and user criteria, reducing complexity for developers.
Contribution
It introduces zkSDK with Presto, a novel profiling language, and a dynamic backend selection algorithm, enhancing ease of use and optimizing ZK proof generation.
Findings
Effective automatic backend selection for real-world workloads
Improved developer experience with seamless backend switching
Demonstrated performance benefits of optimal backend choice
Abstract
The rapid advancement of creating Zero-Knowledge (ZK) programs has led to the development of numerous tools designed to support developers. Popular options include being able to write in general-purpose programming languages like Rust from Risc Zero. Other languages exist like Circom, Lib-snark, and Cairo. However, developers entering the ZK space are faced with many different ZK backends to choose from, leading to a steep learning curve and a fragmented developer experience across different platforms. As a result, many developers tend to select a single ZK backend and remain tied to it. This thesis introduces zkSDK, a modular framework that streamlines ZK application development by abstracting the backend complexities. At the core of zkSDK is Presto, a custom Python-like programming language that enables the profiling and analysis of a program to assess its computational workload…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Software Testing and Debugging Techniques · Security and Verification in Computing
