零知识(或简称zk)是一种使能技术,它不仅可以改变Web3,还可以改变其他的行业。作为一种足够通用的技术,zk可拥有大量的用例,而我们正处于弄清楚该技术可实现的所有用例的早期阶段。一些明显的zk用例,已经找到了真正的应用,例如启用交易隐私以及数据压缩。然而,要让zk的采用变为主流,仍然需要许多潜在的用例和技术进步。
在本文中,我们首先来回顾下ZKP的不同应用。
如果想加入圈子,欢迎私信!所有资讯平台均为工种号——Crypto杰瑞
ZKP应用地图
自发明以来,零知识证明(ZKP)已在crypto行业中找到了稳固的立足点。ZKP确实有一些神奇之处,这使得该技术非常令人兴奋。简单来说,ZKP允许一个实体向世界其他地方证明其知道了一条信息,或者其已经正确完成了一项任务,而无需透露该信息或显示任务执行的细节。zk的神奇数学让我们只需检查生成的ZKP就可以相信知识或执行的完成。出于这个原因,ZKP的第一个,也是最一致的用例是以隐私为中心的crypto网络。ZKP还用于提供以太坊L1上的L2交易的有效性证明,以引入zkrollup的概念。此外,ZKP在不同的项目中还被用于其他的利基应用。
以隐私为中心的支付和协议
ZKP自然地实现了隐私,特别是在缺乏可充当zhen相来源的权威的去中心化网络中。ZKP允许Web3用户向网络验证者证明他们的交易是有效的,即他们有足够的余额可以花费,而无需透露交易细节,如交易金额、发送方或接收方地址。
ZKP最初是为了支持Zcash网络中的隐蔽支付而开发的,然后扩展到了其他网络。隐私支付网络的项目例子包括:
注重隐私的L1:Zcash、Horizon、Aleo以及IronFish
通用链上的隐私智能合约:TornadoCash
注重隐私的L2:Aztec
zkrollup的验证
ZKP的另一个主要用例是在底层L1上生成rollup有效性证明。通用rollup优化吞吐量,即通过不利用ZKP的隐私功能来证明更多的TX。在这种权衡中,ZKP仅作为L2交易执行正确性的证明。
由于无法有效地证明一些通用函数,因此很难生成ZKP来证明任意智能合约的正确执行。解决这个问题需要实现专用的VM,这些VM可以使用底层zk电路得到有效验证。由于这种复杂性,zkrollup一开始只支持支付或单个应用,这样就可以轻松生成ZKP。这里的例子包括zkSync1.0以及Loopring。之后,通用的zkEVM实现开始出现在市场上,包括Starknet、zkSync2.0、PolygonzkEVM以及Scroll。目前,所有的zkrollup都在以太坊上,但理论上也可以在其他链上实现zkrollup。然而,比特币rollup的实施将需要更改比特币操作码并进行硬分叉升级,而这通常不受比特币社区的欢迎。
其他的零知识证明应用
除了以隐私为中心的应用和rollup之外,ZKP在其他区块链协议中也找到了其他的用例。本节介绍了这些用例。
Mina
Mina使用ZKP将区块链状态压缩到很小的大小。为了实现这一点,Mina使用了递归ZKP方法,即对ZKP再进行一次ZKP压缩计算。当Mina网络中生成一个区块时,zk-SNARKs用于生成该区块的证明,以确保其有效性。当新区块引用之前的区块时,新区块的ZKP会验证所有之前的区块,同时保持不变的大小。
Filecoin
Filecoin使用ZKP来确保存储提供商正确存储他们声称存储的数据。这个过程称为复制证明。在此过程中,存储提供者生成ZKP,以证明存储的是数据的唯一副本,即不引用其他提供者维护的副本。ZKP为想要实现一定程度的冗余和可用性的Filecoin用户提供保证。此外,由于证明的大小比存储的数据小得多,使用ZKP可以降低存储提供商的带宽需求。
CeloPlumo
CeloPlumo使用ZKP允许创建可在phone和其他资源有限的设备上使用的超轻型网络客户端。尽管客户端是轻量级的,但它可以保证访问的状态的正确性。
黑暗森林
DarkForest是ZKP在游戏领域最流行的一款应用。尽管ZKP的使用符合隐私用例,但其创建不完全信息博弈的应用是一个独特的用例,其超越了ZKP在支付网络中的金融应用范围。
ZKP的发展轨迹及其应用
在2016年之前,ZKP还只是在小范围的学术圈内被讨论的一个研究课题。当Zcash创始团队创建了ZKP变体zk-SNARK的第一个实现,以支持Zcash网络中的屏蔽/隐私交易时,这一切都发生了变化。有了一个真实的用例之后,ZKP引发的兴趣变得越来越大,这导致了更多更好的ZKP变体,这些变体成为了第一节中我们讨论的很多项目的基础。然而,该技术需要进一步的ZKP开发才能实现主流的采用。
要了解如何进一步改进该技术,我们可以向AI等类似技术学习。在许多方面,ZKP技术类似于人工智能技术,预计它将遵循类似的发展轨迹。与ZKP一样,AI最初是一种很有前途的技术,它可以解决许多问题。然而,最初的人工智能算法的能力有限,计算复杂度远远超过了可用硬件的能力。这使得人工智能应用变得缓慢且不切实际,因此,人工智能主要局限于研究实验室。通过发明深度神经网络(DNN)等新架构,并利用GPU来提高执行速度,从而逐步改进了AI。这最终导致了诸如2012年AlexNet等突破,在最著名的计算机视觉竞赛ImageNet中以巨大的优势获胜。AlexNet是AI时代的一个开端,它催生了当前令人兴奋的AI应用,例如GPT-3、Dall.E2以及StableDiffusion。
而在今天,ZKP的状态类似于AI早期的状态,这是一项仍在积极开发中的很有前途的技术,但因为它是计算密集型的,这导致了较长的验证时间。从人工智能的进步中学习,我们可以发现ZKP技术起飞需要解决的瓶颈。
1.算法/电路改进
就像AI从LeNet-5到AlexNet,从Resnet-50到Transformer一样,ZKP算法也将经历开发阶段,从而显着提高性能。我们已经看到了这方面的进展,自2011年引入zk-SNARK以来,研发人员已经开发了更高级的算法。2018年,Starkware的创始人开发了STARK,这是一种无需可信设置且证明生成时间更短的ZKP方法,这项技术是Starkware旗下几款产品的基础。
随着2019年PLONK的引入,ZKP继续取得了进展,这是一种SNARK实现,它允许很多应用使用单个受信任的设置,而无需重复设置。PLONK促进了多种实现的开发,这些实现被多种Web3协议所使用。
2.优化的执行引擎
ZKP的一个主要限制是计算复杂性,这导致了证明时间过长。例如,Polygon最近宣布的zkEVM实现需要在64核服务器上使用大约5分钟来生成50万gas计算的证明。提高ZKP证明时间是使ZKP技术成为主流的关键部分。与AI类似,优化软件执行引擎和使用专用硬件都是实现这一目标的必要条件。
巴哈马总理:巴哈马无法阻止FTX倒闭:金色财经报道,巴哈马总理Philip Davis周三对议会表示,巴哈马无法阻止FTX的倒闭,目前也没有发现该国加密货币监管存在“缺陷”。巴哈马并不是监管FTX全球业务的唯一国家,调查FTX的崩盘对巴哈马非常重要。Davis在发言中表示,基于迄今为止对FTX流动性危机的分析和理解,还没有发现巴哈马的监管框架中存在可能导致本次危机的缺陷。他补充说,巴哈马证券监管机构之所以能够“立即采取措施”,是因为该国已经有一套针对数字资产的监管框架。据此前消息,巴哈马最高法院已批准普华永道 (PwC) 的两名破产专家作为临时清算人,负责监管FTX的资产。[2022/11/17 13:14:52]
优化软件
很多ZKP生成操作是大规模并行的,这意味着并行处理可以加速ZKP计算。CUDA等专用GPU库可用于加速NvidiaGPU上ZKP计算。由于每个项目都使用不同的ZKP算法,因此有几个项目正在尝试在内部进行开发。这里一个值得注意的例子是Filecoin的Groth16算法的实现,它使用GPU来加速证明过程。另一个例子是Edgeswap使用GPU将PLONK的证明时间减少了75%。
专用硬件
由于GPU对ZKP证明时间的改进会是有限的,因此另一种选择是使用专用硬件,例如FPGA或ASIC。在制造专用芯片的昂贵努力之前,FPGA通常被视为硬件原型设计平台。FPGA或结合GPU和FPGA的混合解决方案,可以在中短期内为Rollup以及以隐私为中心的网络加速ZKP发挥重要作用。然而,如果ZKP技术发展到我们预期的水平,ASIC最终将出现,并赢得这个市场。目前,ZKP的硬件加速没有得到充分解决,可能是因为ZKP算法的多样性和碎片化。然而,我们相信,通过正确的商业模式,一些初创公司可以专注于开发和货币化这部分技术堆栈。
3.软件抽象层
为了释放ZKP的潜力,需要构建几个抽象层和工具。这些抽象对于简化ZKP应用的开发过程是必要的,并允许每组开发人员专注于他们最擅长的事情。例如,应用程序开发人员不应该担心zk电路的底层细节及其工作方式。再次使用AI类比,通过创建多个抽象层,AI可能取得巨大进步。使用这些抽象,AI应用程序开发人员无需担心NN架构或硬件资源分配。TensorFlow和PyTorch等框架抽象出了所有这些底层细节。
zk开发堆栈还没有AI堆栈那么发达。然而,有一些努力来构建这些抽象。在堆栈的底部存在基础的ZKP库,例如PLONK和STARK。在该层之上,Noir等高级语言试图抽象出底层的zk密码学,并帮助应用开发人员专注于应用程序逻辑。Circom是另一种流行的ZKP语言,它位于这两层之间,因为它既可用于创建复杂的zk后端,也可用于开发基于ZKP的应用程序。
Web3中ZKP抽象的另一个例子是StarkWare的Cairo语言,它允许开发人员实现在底层使用STARK证明的通用智能合约。为了提供进一步的抽象,Nethermind的Warp工具允许Solidity开发人员将他们的Solidity代码直接转换为Cairo。使用Warp,可以将UniswapV3代码转换为Cairo,而只需对原始Solidity代码进行最小的更改。
结论
ZKP技术是Web3领域最具创新性的技术之一,它为突破性协议和公司提供了多种机会。在Alliance,我们希望成为这一运动的核心部分,我们正在寻求支持和资助创始人朝着这个方向发展。
文章就到这里了,我会在交流群做更仔细的分析,如果想加入圈子,欢迎私信!所有资讯平台均为工种号——Crypto杰瑞
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。