ZK SNARK 是一种以隐私为中心的证明系统,用于验证链上交易。它主要应用于三个领域:可扩展性解决方案、隐私交易和身份保护。[1][2]
ZK SNARK 的全称是“零知识简洁非交互式知识论证”(zero-knowledge succinct non-interactive argument of knowledge),它是一种零知识证明(ZKP),允许一方(证明者)向另一方(验证者)证明某个陈述是真实的,而无需透露交易信息,且双方之间无需任何交互。它使交易在区块链上保持隐私和完全加密的同时,仍能根据网络的共识规则进行验证。[1][2]
ZK SNARK 是零知识证明(ZKP)的一种变体。ZKP 模拟了零知识这一特性,即证明系统在不泄露相关信息的情况下验证链上交互。证明系统是加密审计器,负责证明交互已经发生并验证交易输出的正确性。[1]
ZK SNARK 需要证明者和验证者两方参与并进行反复交互。证明者将秘密信息传递给特殊算法以计算 ZKP,随后证明被发送给验证者,验证者使用另一种算法检查证明者是否确实知晓该秘密信息。ZK SNARK 主要用于区块链网络,以最大限度地减少常见的可扩展性问题。[1][3]
简洁非交互式知识论证(SNARK)为计算的非交互式委托提供了一种手段,由 Ran Canetti、Alessandro Chiesa 和 Eran Tromer 于 2012 年提出。作者描述了 SNARK 在公共参考串(CRS)模型中构建零知识(ZK)SNARK 的方法。当 ZK SNARK 这一零知识证明(ZKP)协议被添加到分布式账本解决方案中时,可扩展性和隐私性得到了增强。零知识证明(ZKP)最初由 Shafi Goldwasser、Silvio Micali 和 Charles Rackoff 于 1985 年提出,它允许一方仅证明其拥有一项信息,而不泄露该信息或任何额外信息。[2][4][5]
第一个应用 ZK SNARK 技术的是 Zcash。Zcash 是一种基于 Bitcoin 代码库的注重隐私的加密货币,它使用 ZK SNARK 创建屏蔽交易,其中发送者、接收者和金额均保持私密。通过利用 ZK SNARK,Zcash 中的屏蔽交易可以在区块链上完全加密,但仍能根据网络共识规则被验证为有效。[5][6]
ZK SNARK 代表“零知识简洁非交互式知识论证”。在理解其核心逻辑时,涉及五个概念:[1][3]
零知识确保仅揭示陈述的有效性,而不提供任何其他信息。[1]
这指的是 ZKP 的紧凑性和验证速度。由于 ZKP 体积小且验证所需的计算能力极低,因此可以在几毫秒内完成验证。[1][2]
非交互式证明减少了证明者与验证者之间的通信,使证明系统更加高效和实用。[1][3]
在 ZK SNARK 中,论证是证明陈述真实性的一系列数学运算。[7]
它是证明者为生成证明而处理的信息,永远不会透露给验证者。知识论证是一种加密声明,意味着证明者拥有特定信息。如果没有信息,证明者可能无法计算出有效的 ZKP。[1][3][8]
ZK SNARK 充当证明聚合器,因为它能为批处理中的多笔交易编译成单个证明。这单个证明有助于减少区块链上的存储占用和拥堵,从而提高交易吞吐量并降低交易费用。此外,ZK SNARK 证明是简洁的,可以轻松快速地验证所有交易的正确性。利用 ZK SNARK 技术解决 Ethereum 可扩展性问题的一些项目包括 zkSync 和 Polygon Hermez。[1]
掩盖发送者和接收者地址以及交易金额等个人详细信息,是 ZK SNARK 促进区块链上隐私交易的一种方式。通过链上隐私交易,传统货币系统可以摆脱金融监管,机构可以使用由 ZK-SNARK 驱动的网络进行安全且私密的业务。利用 ZK SNARK 实现隐私保护的一些项目包括 Zcash 和 Tornado Cash。[1]
ZK SNARK 在遏制身份盗用风险的同时,增强了个人数据的隐私和安全。它帮助用户在不泄露个人信息的情况下证明其身份或凭证的真实性。借助 ZK SNARK,去信任身份验证成为可能,从而消除了服务提供商存储用户凭证的需求。利用 ZK SNARK 进行身份保护的一个项目示例是 ZKCreds。[1]
2026年6月4日。01:46 UTC
编辑摘要:
Removed ZK SNARK content


