Zero-knowledge proofs (ZKPs) enable computational integrity and privacy by allowing one party to prove the truth of a statement without revealing underlying data. Compared with alternatives such as homomorphic encryption and secure multiparty computation, ZKPs offer distinct advantages in universality and minimal trust assumptions, with applications spanning blockchain systems and confidential verification of computational tasks. This survey provides a technical overview of ZKPs with a focus on an increasingly relevant subset called zkSNARKs. Unlike prior surveys emphasizing algorithmic and theoretical aspects, we take a broader view of practical deployments and recent use cases across multiple domains including blockchain privacy, scaling, storage, and interoperability, as well as non-blockchain applications such as voting, authentication, timelocks, and machine learning. To support consistent comparison, we provide (i) a taxonomy of application areas, (ii) evaluation criteria including proof size, prover and verifier time, memory, and setup assumptions, and (iii) comparative tables summarizing key tradeoffs and representative systems. The survey also covers supporting infrastructure, including zero-knowledge virtual machines, domain-specific languages, libraries, and frameworks. While emphasizing zkSNARKs for their prevalence in deployed systems, we compare them with zkSTARKs and Bulletproofs to clarify transparency and performance tradeoffs. We conclude with future research and application directions.
翻译:零知识证明(ZKP)通过允许一方在不泄露底层数据的情况下证明陈述的真实性,从而支持计算完整性与隐私保护。与同态加密、安全多方计算等替代方案相比,ZKP在通用性和最小信任假设方面具有显著优势,其应用涵盖区块链系统与计算任务的可信验证。本综述从技术视角概述了ZKP,重点关注其日益重要的子类——zkSNARK。不同于先前侧重算法与理论层面的综述,本文从更宏观的视角审视实际部署情况以及跨领域最新用例,涵盖区块链隐私、扩容、存储与互操作性,以及投票、认证、时间锁和机器学习等非区块链应用。为支持一致性比较,我们提供:(i)应用领域分类体系;(ii)包含证明大小、证明者与验证者时间、内存及设置假设在内的评估标准;(iii)总结关键权衡与代表性系统的对比表格。本综述亦涵盖支持性基础设施,包括零知识虚拟机、领域特定语言、库及框架。鉴于zkSNARK在实际系统中的广泛采用,我们将其与zkSTARK及Bulletproofs进行对比,以阐明透明度与性能之间的权衡。最后,本文提出未来研究方向与应用前景。