本文由社区供稿,作者为Manta Network的联合创始人Kenny Li;Manta Network是一个由零知识证明技术提供支撑的可编程隐私Layer 1协议。
摘要
零知识证明(ZKP)是一种密码学技术,它允许在不泄露信息本身的情况下验证一条信息的真实性。该技术对于提升区块链、加密货币和去中心化金融(DeFi)隐私和安全性的重要性日益提升。
许多DeFi项目已经将ZKP应用至借贷和交易等服务中,为用户提供更好的隐私和安全性。许多Layer 1区块链正在添加基于ZKP的汇总或零知识以太坊虚拟机(zkEVM)。随着零知识证明应用的采用率日益提升,其有望在区块链和Web3领域发挥越来越重要的作用。
零知识证明方法可使一方(证明者)在不泄露任何额外信息的情况下向另一方(验证者)证明一项陈述的真实性。当存在敏感信息且证明者不希望验证者访问信息时,这一点尤为有用。
证明者只需提供其可以生成的数学证明,而验证者可以使用此证明来验证陈述的真实性,但无法使用此证明来重构原始信息。
假设一条隧道拥有两个入口A和B。有一扇上了锁的门,用密码封锁住了唯一的路径,阻止人们从隧道的一端走到另一端(从A到B)。您知道密码,且希望将密码卖给想进入隧道的X。
您希望她在得到密码之前先付款,而她却想让您先证明您真的知道密码。在此种情况下,她可以站在隧道前面,看着您走进其中一个入口,然后从另一个入口走出来。通过这种方式,她可以确信您真的知道密码。
零知识证明之所以能够在区块链和加密货币领域得到追捧,是因为人们在数字交易中对隐私和安全性的需求日益增长。随着区块链技术和加密货币的兴起,人们越来越需要一种既能验证交易又不泄露敏感信息的方法,而ZKP可以满足这一需求。
近年来,零知识证明吸引了更多的关注和兴趣,许多采用ZKP的协议已经推出,主流区块链也已开发出了零知识汇总。在2022年开发者大会(DevCon)上,超20%的讨论均围绕零知识证明技术展开,表明该技术广受欢迎。
零知识证明的一个关键发展是越来越多地使用一种特定类型的ZKP - 简洁非交互零知识证明(zk-SNARK)。zk-SNARK已广泛应用于各类DeFi App,例如私人代币交易和屏蔽借贷。零知识证明的另一个主要发展是通过零知识汇总(zkRoll-up)更加注重可扩展性和性能。
简洁非交互零知识证明(zk-SNARK)是一种特定类型的零知识证明,它允许在不透露关于陈述本身的任何信息的情况下验证陈述。
zk-SNARK已应用于Zcash和JP Morgan Chase基于区块链的支付系统等应用。此外,它还用于向服务器安全验证客户身份。
zkRoll-up是一种区块链网络扩容解决方案,它可以将一批多笔交易汇总为一笔规模更大的单笔交易,然后将其记录在区块链上。例如,BNB Chain于2022年推出了基于zkRoll-up架构的zkBNB测试网。
zkBNB可以将数百笔交易捆绑成一批链下交易,并生成一个密码证明以证明所有交易的有效性。zkRoll-up在可扩展性和安全性之间达成了某种平衡,适用于大规模、低延迟的设置。
零知识证明的用例很多,其中一些已经实现,而其他的则有望在未来成为现实。ZKP的一些主要用例包括:
零知识证明可用于验证用户身份,而不会泄露任何敏感的个人信息。这在数字投票系统等应用中可能十分有用,因为该场景要求在不损害选民匿名性的情况下核实选民身份。
实现保护隐私的交易是零知识证明在加密货币领域中的热门用例之一。例如,Manta Network的MantaPay去中心化应用程序(DApp)便采用了ZKP,使用户得以在去中心化交易平台(DEX)上进行交易,而无需透露其身份或交易细节。这样一来,用户在维护自身隐私的同时,仍可以使用该平台进行交易。
Zcash是一种使用零知识证明来实现屏蔽交易的加密货币。在此类交易中,发送者和接收者地址以及交易金额可对公共区块链屏蔽,提升了用户交易的隐私性。
零知识证明也可用于将资产进行代币化并验证其所有权证明。例如,一项财产可进行代币化,且任何一方均可在不公开透露任何其他信息的情况下验证其所有权。
一些国家在收集和分享金融信息方面设有严格的法规,而去中心化平台可能很难遵守这些法规。零知识证明可用于与监管机构共享所需信息,同时对其他各方保密。
这将有助于弥合去中心化平台与传统金融机构之间的差距,降低DeFi遵守各司法管辖区内法规的难度。
未来零知识证明可能会带来新的技术创新。一些与ZKP相关的值得关注的未来发展包括:
随着区块链和DeFi生态系统的不断发展与演变,对不同区块链网络之间互操作性的需求日益增加。跨链隐私层将允许人们在不同的区块链网络上进行交易,同时保护相关各方的隐私。
另一个值得关注的领域是zk-STARK(零知识可扩展透明知识论证)使用的增加,这是一种较新的零知识证明,被认为比zk-SNARK更安全高效。与zk-SNARK相比,zk-STARK的另一个优势在于其验证速度更快,且无需可信设置。
零知识证明技术可能较为复杂,并非所有开发团队都具备密码学这一特定领域的专业知识。用户友好的ZKP工具包有助于弥补这一差距,可降低不同背景的开发人员使用该技术的难度。
零知识证明提供了一种在保护隐私的同时验证信息真实性的独特方法,但这种验证并非100%准确。虽然当证明者撒谎时验证的概率可以忽略不计,但用户应该意识到ZKP并非100%可靠。
此外,零知识证明使用的算法需要消耗大量的计算资源。在某些类型的ZKP中,密集计算必不可少,因为它们需要验证者和证明者之间进行诸多交互。而在另一些类型的ZKP中,这些算法的计算量非常大,可能会限制ZKP的应用。
零知识证明因其独特的隐私保护特性和扩展潜力而迅速受到关注。随着该项技术在区块链、加密货币和DeFi领域的应用日益增多,可能带来更多创新服务,从而极大地造福于用户。零知识证明有望在创建更安全、更私密、更高效的DApp生态系统方面发挥关键作用。
zk-SNARK和zk-STARK详解
区块链Layer 1与Layer 2扩展解决方案