区块链网站|NFTS 以太坊(ETH) zkEVM现状报告:以太坊扩张的未来

zkEVM现状报告:以太坊扩张的未来

广告位

zkEVM 现状报告:以太坊扩展性的未来

原文:银河数码

由DeFi Way翻译和编辑

介绍

零知识以太坊虚拟机(zkEVM)是一项雄心勃勃、改变游戏规则的技术,可以在短期和长期内提高以太坊的可扩展性。今年,三个主要的以太坊扩展项目——zkSync、Polygon和Scroll——都宣布了其zkEVM实现的重大进展,其中许多项目都是在今年的早期alpha阶段开始的,现在将区块链作为独立的第2层(L2)进行运营。随着时间的推移,zkEVM可能直接从以太坊的基础层运行。

简而言之,zkEVM是一个虚拟机,可以执行与以太坊虚拟机(EVM)相同的高级编程语言或低级字节码,并且用零知识证明(ZKP)证明这个代码。加密证明可以验证数据本身的任何信息,如其属性或内容,而不会泄漏。早在1982年,计算机科学家Goldwasser、Micali和Rackoff(希尔维奥米卡利是Algorand区块链公司的创始人)首次引入了ZKP这个概念。ZKP经常与同态加密混淆,同态加密是密码学的另一个分支,它允许在不解密的情况下对加密数据执行操作。同态加密方案由Rivest、Adleman和Dertouzos于1978年首次提出,现已成为实现云计算和存储的关键技术之一。值得注意的是,同态加密也被用在一些公开的区块链协议中,如隐私币Grin,以混淆交易金额。

在过去的40年里,计算机科学家发明了多种算法来安全高效地生成ZKP,其中许多算法分为两类:可扩展透明知识论证(STARKs)或简洁非交互知识论证(SNARKs)。这些算法已被开发用于大量用例,包括核裁军、身份认证系统,以及最近通过公共区块链和加密货币的出现实现的区块链可扩展性。尤其是在以太坊,许多开发者认为ZKP是扩展的圣杯,因为与其他用于验证交易数据的加密方案相比,ZKP简洁且易于验证。难以构建或破解但易于验证是密码协议开发者的共同目标,因为它允许广泛而有效的分发。

尽管零知识系统有很多好处,但众所周知,它们很难推广和应用于证明任意复杂度的代码。构建ZKP来本地支持和证明区块链以太坊上的所有类型的交易活动是开发者在过去几年中进行的一个正在进行的研究项目。直到2021年11月,Starkware才推出了第一个用于证明基于以太坊的交易的通用ZK系统。这是通过Starkware团队创建的定制编程语言Cairo实现的。然而,最近在2022年7月,基于以太坊的三个不同的L2协议——zkSync、Polygon和Scroll——宣布了一项突破,利用ZKP以zkEVM的形式扩展了以太坊。

注意:尽管这些虚拟机通常被称为zkEVM,但它们并没有利用ZKP的隐私,而是充分受益于ZKP的安全性和效率。因此,这些类型的虚拟机的更准确的名称是验证证明生成EVM,但在本报告中,将使用更流行的名称zkEVM。

本报告的目的是让读者熟悉zkEVM的一般概念,并检查以太坊开发中的各种实现。由于zkEVM是一个高层次的话题,本报告首先简要概述了以太坊网络的现状,通过介绍块产生、EVM、rollup等核心概念,为理解zkEVM打下基础。然后,我们将总结以太坊中可以存在的不同类型的zkEVM,并比较目前生产中五种主要的zkEVM实现。然后,我们将重点关注这种新兴技术在实现中面临的挑战,以及我们对zkEVM未来竞争格局的展望。总的来说,zkEVM仍然处于以太坊开发和采用的早期阶段,尽管他们有很高的潜力成为L2区块链和最终以太坊协议本身的首选扩展技术。

今天的以太坊

在深入研究zkEVM的复杂性之前,重要的是首先从高层次理解事务是如何包含在以太坊的块中的。

Block当用户向以太坊提交新的交易时,连接到网络的计算机(也称为节点)将交易存储在一个称为内存池的本地数据结构中,内存池负责维护未确认交易的列表。然后,随机选择运行节点和抵押32 ETH作为网络抵押品的验证者,对内存池中的事务进行批量处理和分块处理。选择将新块附加到以太坊区块链的验证者有时被称为“提议者”。一些支持者在构建块时将依赖第三方块构建器而不是本地内存池,以从最大可提取价值(MEV)中获得额外奖励。想了解更多关于MEV的信息,请阅读这份银河研究报告。

块按顺序组织,并通过父哈希(前一个块的头哈希)链接在一起。每个块包含其父块的先前散列,将块链接在一起并形成区块链数据结构。由父哈希链接的块如下图所示:

直到2022年9月15日,以太坊一直依靠工作量证明(PoW)的共识机制。矿工而不是核查员负责区块生产。矿工不需要消耗大量的金钱,但需要消耗大量的电力来处理用户交易。关于PoS对以太坊影响的完整分类,请在这里阅读银河合并的研究大纲。

在PoW和PoS的一致协议下,以太坊区块链缺乏可扩展性的根源在于有限的块空间。以太坊的空间是以气体为单位来测量的。需要执行更多计算的交易通常以较高的gas单位定价,而计算成本较低(即资源密集度较低)的交易具有较低的gas成本。通过以太坊网络自动设置的动态燃气费率(称为基本费用)被转换为ETH。以太坊协议限制了区块,所以最多只能容纳3000万单位的气体。该最大嵌段气体限制保持了快速嵌段增长时间,并降低了链断裂的风险。有关以太坊费用动态的更多信息,请阅读这份银河研究报告。

以太坊虚拟机一旦事务被包含在以太坊上的一个块中,这些事务将通过一个名为以太坊虚拟机(EVM)的自定义运行时环境来执行。EVM的目标是在以太坊上部署任意复杂度的代码。这本质上是以太坊成为普适区块链,有时被称为图灵完备系统的根本原因。

EVM执行交易的方式是有规则的。首先,EVM将人类可读的编程语言(如Solidity和Yul)编译成面向机器的或“低级”语言,这种语言被称为EVM字节码。然后,EVM将字节码解析成称为“操作码”的顺序指令列表。每个操作码命令EVM执行不同的任务,并以十六进制形式在EVM字节码中表示。例如,当在链上执行智能合约时,命令EVM保存瞬态数据的操作码在助记符中被表示为“MSTORE ”,在十六进制形式中被表示为“0x52”。为了帮助读者概念化操作码,下面是以太坊黄皮书中定义的简单操作码的快照:

多年来,以太坊的开发者已经为EVM添加了新的操作码。他们还添加了预编译,使用户能够在网络上执行更高级的操作,如哈希函数和标量乘法。作为同类的第一个运行时环境,EVM已被广泛用作公共区块链上智能合约部署的标准。然而,作为同类技术中的第一个,EVM确实有设计限制,其中最相关的是缺乏与ZKP的兼容性。

Rollup为了提高以太坊的可扩展性,有几个L2网络将事务执行从基础层抽象到rollup。Rollups压缩事务数据,因此向基本层提交一批事务所需的块空间量大大低于通过链上的内存池单独确认这些事务所需的块空间量。Rollups由称为“分拣员”的网络运营商运营,而不是验证员或矿工。序列器负责验证rollup的状态转换。它们是将用户交易打包成一个汇总批,然后将这些交易的证书提交给邰方的基本层的实体。下图说明了排序器在汇总中的作用:

要全面了解以太坊L2生态系统,请阅读这份银河研究报告。

Rollup不同于以太坊上的其他扩展解决方案,比如等离子和状态通道。这些解决方案在以太坊的历史进程中被核心开发者研究和抛弃。有两种主要类型的汇总:最佳和零知识(ZK)。最佳汇总依赖于欺诈证明,这意味着对L2网络状态的更改将被发布到以太坊,而无需直接证明其有效性。只要至少有一个诚实的参与者观察最优汇总的状态转换,就可以检测并取消无效的状态转换。就Arbitrum和乐观而言,可以提交欺诈证书的“挑战窗口”持续一周。一旦挑战窗口结束,最佳汇总的状态转换就被认为是最终的和有效的。

另一方面,ZK汇总依赖于ZKP,每次在L2上处理一个交易批次时,它都会生成一个有效性证书并将其发布到以太坊。自动生成所有事务处理批的有效性证书,提高了ZK汇总的安全性。这也意味着,每次向以太坊提交新的有效性证书时,可以从ZK汇总中提取资金,而最佳汇总通常需要大约7天的等待时间,以便生成争议和欺诈证书。ZK汇总还提供了比最佳汇总更好的数据压缩。下表总结了最佳汇总和ZK汇总之间的高级差异:

最优汇总相对于ZK汇总的主要优势在于,最优汇总的虚拟机与EVM的虚拟机几乎相同。目前运行在以太坊上的optimsitc rollup实现,如乐观和Arbitrum,模拟了与以太坊相同的事务执行环境,分别称为OVM和AVM。大多数ZK汇总是特定于应用程序的,这意味着它们不支持所有类型的基于以太坊的交易和dapp。

Loop、StarkEx汇总和zkSync 1.0是特定应用ZK汇总的示例,它们支持特定类型的支付、代币兑换和/或NFT铸币。

StarkNet等一些ZK汇总是通用的,这意味着它们支持所有类型的交易和dapp。然而,这些ZK汇总要求dapp开发者学习如何在新的定制执行环境中执行他们的智能合约代码,该定制执行环境被优化用于生成ZKP而不是EVM兼容性。由于现有的分散应用和用户难以加入新的执行环境,在以太坊中采用ZK汇总是一个挑战。为了克服这个问题,Polygon Hermez、zkSync和Scroll等ZK rollup项目正在努力实现与EVM兼容的ZK rollup,这是以太坊中所有智能合约代码的原生执行环境。

STARK、SNARK、Volumes和validiums在实践中,汇总不仅通过链上发布的证书类型(最优汇总中的欺诈证书或ZK汇总中的有效性证书)来区分,还通过汇总的数据可用性策略和认证算法来区分。

正如本报告前面提到的,有两种有效性证明,称为SNARK和STARK。

SNARKs依靠的是椭圆曲线加密技术,这是比特币和以太坊中最常用的数据加密技术。SNARK通常还依赖于可信设置,这意味着算法需要由可信实体预先生成一段数据。可信设置仪式不是一个重复的事件,而是一个人或一群人产生核心数据的一次性过程。这些数据被称为公共引用字符串(CRS),它是一个值,然后在zk-SNARK算法中使用,以生成可靠的证明。如果生成CRS所需的输入被破坏,那么这可能导致假证明生成。因此,重要的是所有仪式参与者销毁用于生成CRS/SRS的输入,或在仪式完成后使其不可恢复。基于SNARK的算法的一些例子包括Sonic、Plonk、Redshift和Marlin。STARKS不依赖椭圆曲线或可信设置。STARKS依赖于哈希函数,一些开发者认为哈希函数有利于反量子加密。然而,STARK更复杂,需要更多的计算资源来运行。它们在2018年推出的时间也晚于自2012年以来一直存在的SNARKs。由于这些原因,作为一种证明算法,SNARKs比STARKs应用更广泛。基于斯塔克算法的一些例子包括分形、超音速、Fri-斯塔克和根斯塔克。除了生成有效性证书的方法不同之外,ZK汇总的数据可用性策略也不同,这意味着它们在链上最终发布事务处理批的哪些组件上的策略也不同。包括Optimal和ZK在内的Rollups通常会在每次处理一批交易时向主网络以太坊提交三份数据。首先,rollup的验证者向邰方提交新网络状态的根散列。(状态是指L2上交易和账户余额的更新记录。)状态记录在Merkle树数据结构中,如下图所示:

根哈希是整个Merkle树的密码承诺,有时也称为状态承诺。并不要求所有ZK汇总都向邰方提交根哈希,但这样做的目的很普遍。目的是使用以太坊上发布的数据轻松地重建和验证rollup上执行的交易。

除了用于确认第二层区块链的新状态的高级根哈希之外,加密证书也被记录在以太坊上。在最优汇总的情况下,该证书可以是ZKP或欺诈证书。它可以由STARK或SNARK算法生成。最后,除了这两条数据,ZK rollups还向以太坊发布了批量交易的压缩版本,也称为状态增量。状态增量是向以太坊提交大量交易数据的一种经济高效的方式,这是ZK汇总所独有的。除了状态增量,Optimal Rollups使用其他数据压缩技术来批处理事务并将它们提交到链中。

(附注:一些ZK汇总项目,如Scroll团队,实际上并不依赖于通过将状态增量发布到以太坊获得的额外数据压缩增益。在Scroll开发人员的心目中,即将到来的代码变化,如EIP-4844和danksharding,将显著降低向邰方提交交易数据的成本,以至于state delta相对于其他数据压缩技术的效率提升可以忽略不计。)

使用来自Merkle树的最低层(叶)的数据并将其与来自Merkle树的最高层(根)的根散列相结合,允许任何人重构并验证在链上提交的交易批次的内容。大多数聚合的一个决定性特征是能够使用链中提交给邰方的数据来重新创建在第2层网络上执行的事务。然而,一些汇总避免向邰方提交状态增量或其他压缩的事务数据,而是将数据发布到其他地方,以降低运营成本并提高网络可扩展性。一些开发人员会争辩说,第2层网络避免向邰方提交交易数据,从而破坏了交易重建的保证,不应该被归类为汇总。

汇总处理状态增量的方式决定了网络是否可以分类为有效或卷。

Validium最好将其理解为仅提交链上的验证证书和根哈希,同时将状态增量存储在链下的单独网络上的汇总中。这在理论上将rollup的事务吞吐量提高到了9,000 TPS,因为rollup不再依赖以太坊的数据可用性,而受到网络块空间的限制。验证的缺点是安全性。用于发布链下数据的独立网络并不继承以太坊一样的安全保障。Volitions让用户决定是在链下还是链上发布状态增量。它们最初是由以太坊的扩张初创公司Starkware创建的。这是一种新颖的方式,它允许用户决定他们的交易是否需要增强安全性,但成本可能会更高,方法是在链上直接向以太坊或Starkware可信数据可用性委员会(DAC)等离线网络进行确认。

EVM等价的四个主要层次

鉴于上述框架,EVM和ZK总结了以太坊上的事务执行,我们现在可以讨论zkEVMs。ZkEVM是一个ZK卷,它模仿了与主网络以太坊相同的事务执行环境。zkEVM的实现在证明算法和数据可用性策略上有所不同。zkEVM的EVM等价水平也是不同的。EVM等值有四个主要层次。以下是不同级别的概要:

语言等价为了实现语言级别的EVM等价,zkEVM必须能够理解和编译本地的EVM友好语言。换句话说,这些类型的zkEVM可以将EVM友好的编程语言(如Solidity或Yul)翻译成为生成ZKP而优化的定制语言。这被认为是在ZK卷中实现EVM兼容性的最简单和最有效的方法之一。然而,这些类型的zkEVM在为用户和智能合约开发者提供与EVM交互相同的体验方面是最有限的。

与EVM的语言兼容意味着通过编译器运行Solidity,编译器将EVM的高级编程语言翻译成定制的低级语言,可以由专门为生成ZKP而设计的虚拟机进行解释。对于大多数只关心通过Solidity代码与EVM交互的以太坊用户和智能合约开发者来说,zkEVM的底层行为可能并不重要,只要能够通过zkEVM执行与以太坊主网上相同类型的代码即可。另一方面,为EVM构建的复杂开发工具、框架和测试环境可能需要修改,然后才能在只支持语言层EVM的zkEVM上使用。

字节级等价EVM等价的第二和第三级是字节码级,它需要ZK汇总来解释从更高级语言(如Solidity或Yul)编译的EVM字节码。ZkEVM可以模仿与EVM相同的高级编程语言和低级字节码,从而实现与EVM更深层次的兼容。这些类型的zkEVM构建起来更复杂,因为它们需要更先进的工程设计。

正如本报告前面提到的,虚拟机通过一个名为opcode的特定指令表来执行EVM字节码。每个操作码命令EVM执行不同的任务。字节兼容zkEVM的目标是创建一个ZK系统,可以证明EVM字节码,解析字节码中包含的各种操作码。这些类型的zkEVM的优势在于它们与基于EVM的应用程序和工具的兼容性。ZkEVM是完全字节码兼容的,它将能够支持与基于以太坊的原生应用程序相同的调试工具和开发人员基础设施。然而,实现完整的字节码兼容性通常会导致创建低效且昂贵的ZK系统的负面结果。为了降低成本和提高效率,部分字节码兼容的zkEVM可能会删除EVM的一些函数,比如使用ZK数学和密码学更难证明的预编译。

目前有两种字节码兼容的zkEVM,多边形zkEVM和滚动zkEVM。这两个问题将在本报告的后面部分详细讨论。在他们当前的设计中,这两个实现只是部分兼容EVM字节码。然而,随着时间的推移,这些实现正朝着完全兼容的方向发展。

共识层等效EVM等效第四层也是最后一层是共识层。这是ZK汇总到EVM的最高本机兼容性。它有时被称为“神圣的总结”。尽管并非所有的专用汇总都需要基于ZK,但它们可以是最佳汇总。其思想是zkEVM生成的加密证书不需要以任何身份在以太坊上重新执行。证书本身可以用来验证在主网络的以太网广场上生成的块。从某种意义上说,实现共识兼容的zkEVM才是zkEVM最真实的形态。

对于一些开发人员来说,可以实现一致水平兼容性的ZK汇总是唯一应该被称为zkEVM的ZK汇总,而其他具有语言和字节码兼容性的ZK汇总应该分别被视为EVM兼容和EVM等效,但不是zkEVM。以太坊的开发者们对于zkEVM的精确定义以及它在不同层面上的EVM等价有很多争议。实际上,EVM等价是一个范围,上面描述的每个层次都不是一个严格的范畴。zkEVM开发的早期性质意味着为语言级兼容性而构建的项目也可能提供某种字节码级兼容性,而字节码级兼容的zkEVM最终可能会发展成一个具有许多共识级等效性的混合汇总。

在本报告的下一部分,我们将深入了解以太坊上目前生产的五种zkEVM实现。

以太坊zkEVM项目概述

目前,还没有一个接近生产就绪的zkEVM实现可以达到共识级的兼容性。这是一个正在进行的研发领域,以太坊的核心开发者将其描述为“多年的工程努力”。但是,一些实现在语言和字节码的级别上是等效的,这仍然为ZK rollup第2层生态系统提供了一个改进,该生态系统主要专注于以太坊中的应用。构建ZK汇总来执行一般智能合约和用户事务而不是以应用程序为中心的事务是一项艰巨的任务。到目前为止,只有少数项目在主网络上成功启动。

以下是以太坊中五个zkEVM项目的高级概述:

ZkSync 2.0Matter Labs是一个区块链工程团队,成立于2018年12月。该团队于2020年6月在以太坊上推出了自己的ZK卷协议,名为zkSync。ZkSync是以太坊中总锁定值第六大L2网络,支持有限范围的智能合约操作,包括ETH、ERC20令牌和原生NFT的低气体传输,以及原子互换和限价单。该公司最近通过由Andreessen Horowitz牵头的B轮融资筹集了5000万美元,并宣布了2亿美元的国库基金,致力于在未来几年内扩大zkSync生态系统。

ZkSync 2.0是一个语言级兼容的zkEVM,旨在支持所有类型的智能契约操作。ZkSync 2.0依赖于一种基于SNARK的证明算法,这种算法被称为UltraPLONK。它还依赖于一个名为LLVM的开源编译器基础设施,将Solidity和其他类型的编程语言编译成zkEVM字节码。该项目于2022年10月在“Baby alpha”阶段推出,预计将于2022年底向外部用户全面开放,尽管Matter Labs团队仍未披露zkSync 2.0证书生成的所有细节。(由于L2网络之间的激烈竞争,以及rollup技术初期带来的更大的技术漏洞风险,大多数roll up项目都是在高度保密的情况下操作的,开源的开发过程是不公开的。)一旦开始,zkSync 2.0将是一种意志,允许用户选择将他们线下交易的状态增量发布到一个单独的协议,称为zkPorter,而不是发布到链上的以太坊。该策略理论上将zkSync 2.0的每秒事务吞吐量从2,000 TPS提高到20000 TPS以上。

StarkNet和zkSync一样。StarkNet是一个由Starkware团队开发的通用ZK,已经在以太坊运行。Starknet的交易执行环境叫做StarkNet OS,其原生智能合约编程语言叫做Cairo。与其他ZK网络相比,Starknet是最全面的网络之一。StarkNet为用户提供了一种可选的离线数据意志(使rollup成为卷的一种),从而实现交易成本相对于非卷rollup的双倍降低。STARKNet操作系统依赖于基于Stark的证明算法。和zkSync 2.0一样,StarkNet OS上生成证明的过程也不是开源的。与zkSync等竞争对手类似,随着时间的推移,开源关于证明生成的细节,以便任何人都可以连接到网络,运行专用硬件,并通过生成证明获得奖励,这是rollup长期发展路线图的一部分。

StarkNet本身不支持与EVM的语言兼容。不过,以太坊执行层的软件客户端Nethermind背后的团队正在积极构建名为Warp的Solidity to Cairo语言编译器。通过Warp编译器,StarkNet用户可以部署基于以太坊的智能合约,而无需在Cairo中重写代码。此外,还有一个名为Kakarot的社区驱动项目,用于构建另一个从Solidity到Cairo的编译器,以帮助支持StarkNet与EVM的兼容性。

Starkware团队宣布他们计划在7月推出StarkNet本地代币和一个新的基金会。在透露最初100亿供应量的三分之一将分配给StarkNet核心贡献者后,拟议中的代币分配成为争议的根源。今年,Starkware作为一家公司筹集了1亿美元,估值为80亿美元。本轮融资由投资公司Greenoaks Capital、Coatue和Tiger Global领投。除了StarkNet,StarkWare还为用户提供可定制的区块链可扩展性解决方案,称为StarkEx,它利用了该公司新颖的基于StarkEx的ZK技术。与StarkNet不同,StarkEx是以应用为中心的ZK汇总。一些著名的DeFi应用程序使用StarkEx在Ethereum上实现更大的可伸缩性,包括soRare、Immutable和DeversiFi。

polygon zkEVMPolygon团队构建的zkEVM实现(以前称为Matic Network)已经实现了与EVM的字节码级兼容。Polygon的zkEVM预计将于2023年初的某个时候在以太坊上推出,最近已经开放源代码供公众审查。(需要注意的是,虽然代码可以公开查看,但不能使用、修改或共享,因为它不是在开放源代码许可证下发布的。)多边形的zkEVM的实现依赖于基于SNARK和STARK的证明。具体来说,zk-SNARKs用于证明zk-STARKs的正确性。这具有使用与zk-STARK相关的快速证明时间和生成zk-SNARK所需的相对较少的计算资源的优点。关于数据可用性,Polygon的zkEVM实现不会立即支持离线数据解决方案。然而,Polygon积极致力于通过开发Polygon Avail来实现zkEVM。

Polygon成立于2017年,是一家主要专注于以太坊不同扩展解决方案的公司。2020年6月推出了基于股权证明的以太坊侧链,名为Polygon PoS。从那以后,Polygon的产品系列得到了显著的发展和多样化。除了该公司的zkEVM实现之外,它还在积极开发另外两个ZK卷积实现,Polygon Miden和Polygon Zero,以及一个结合了最优卷积和ZK卷积的混合卷积实现,称为Polygon Nightfall。今年早些时候,Polygon团队完成了自第一个token发行MATIC tokens以来的第一轮重大融资,从40家风险投资公司筹集了4.5亿美元。本轮融资由红杉资本印度公司领投。

ScrollScroll是另一个在字节码级别兼容的zkEVM实现。Scroll于2021年由桑迪彭、和沈海辰创立,他们在2022年宣布为白名单用户推出前alpha版本测试网络。值得注意的是,围绕其zkEVM实现的所有代码都是公开的,并在开源许可下发布。Scroll将依赖于一个基于SNARK的证明算法,不支持链下数据可用性的解决方案。此外,Scroll团队正在设计一个分散的证明生成市场,以支持他们的zkEVM。为此,他们还专注于构建可由全球用户运行的特殊硬件,以免许可和抗审查的方式生成ZKP。

Scroll团队与以太坊基金会的扩展解决方案R&D团队紧密合作,该团队被称为隐私扩展以太坊(PSE)团队。PSE关于zkEVM的工作将在本报告的下一节讨论。与zkSync、StarkWare和Polygon等其他团队相比,Scroll规模更小,更专注于研究(即更少以商业为导向)。他们也只关注他们的zkEVM实现,而其他竞争团队有一套其他ZK相关的产品和服务。Scroll今年获得了3000万美元的A轮融资,投资者包括Polychain Capital和贝恩资本Crypto等领先的加密货币风险投资公司,以及包括以太坊基金会(Ethereum Foundation)的Ying Tong和Carlos Aria在内的几名天使投资人。

隐私与扩展探索(PSE)PSE是以太坊基金会的研究机构,专注于探索ZKP的前沿研究及其在以太坊的应用。他们过去被称为“AppliedZKP”团体。与本报告中强调的其他zkEVM实现相比,PSE的zkEVM并不专注于在不久的将来成为生产就绪(PSE研究的生产就绪组件正在由Scroll团队实现)。PSE正在研究的ZkEVM致力于根据enshined rollup模型实现与EVM的共识级兼容性。

PSE研究中使用的证明算法是zk-SNARK,名为Halo2,由Zcash (ZEC)加密货币的核心开发团队Electric Coin Company开发。PSE团队开发的ZkEVM是开源的,任何人都可以参与。除了zkEVM,PSE团队正在推进其他几个项目,包括反共谋分散应用基础设施的研究,用户交易隐私的增强和替代加密签名方案。关于PSE正在处理的项目的完整列表,请点击此处。

构建zkEVM的挑战

在以太坊上构建生产就绪的zkEVM实现存在一些持续的挑战。zkEVM等新技术的实现,zkEVM的去中心化操作,以及用于生成zkEVM证书的特殊硬件未经证实和测试的性质,是开发者面临的障碍。本节提供了对这些挑战的一些见解。

新奇zkEVM是以太坊的新概念,2022年才开始工作。这项技术面临的一个简单挑战是它未经证实和测试的性质。大多数zkEVM实现在生成证明的方式、生成证明的硬件要求以及分散排序器的细节上仍然有很大的模糊性。建立zkEVM作为可靠的可扩展解决方案的信任是Scroll、Polygon、StarkNet和zkSync等团队关注的重要领域。

分散化的挑战围绕分散化zkEVM操作的前进方向的问题广泛适用于所有汇总(包括最优汇总),因为有效性和欺诈证明的生成很大程度上取决于集中排序器。如上所述,定序器是L2的利益相关者,负责批量处理用户事务,并将这些批量的证书提交给邰方的L1。

目前,以太坊上运行的每一个rollup都是由一个集中式的分拣器操作的,并且依赖于一个由单个实体管理的可升级的智能合约。今天rollup的集中性质的主要原因之一是技术的早期阶段和当代码中出现意外错误时快速修复的需要。此外,尤其是zkEVM背后的技术是不断变化的,因此很难自信地激励用户在自己的设备上运行这项新兴技术。为rollup分散排序器通常意味着启动一个令牌和丰富一个共识协议,并以一种不需要许可的方式组织多个排序器和证明者。虽然启动代币和创建共识协议的挑战对区块链公众来说并不陌生,但它们需要时间和大量考虑才能负责任地启动。由于设计和最初的供应分布,StarkWare宣布的令牌计划引起了争议,而Polygon预计在其zkEVM推出后,将改善其现有MATIC令牌的令牌经济性。预计ZkSync还将在未来几个月内为其rollup推出专用令牌,而Scroll推出令牌的计划仍不明朗。

在zkEVM的上下文中,排序器去中心化的重要的第一步是开源项目软件,在撰写本文时很少有人这样做。在去中心化zkEVM操作方面,可以依靠大量预存用户进行汇总的zkEVM实现可能更有优势。

zkEVM硬件挑战尽管ZkEVM被证明验证起来很简单,但要生成它们需要大量的计算,部分原因是ZKP背后的数学依赖于线性计算序列。这使得在机器上并行生成证明的工作变得困难。最近,递归被用来证明在这方面已经取得了进展。递归证明是一种减少证明生成延迟的技术。它指的是通过重复生成证明来进一步压缩事务,从而使ZK-rollup上的小批量事务可以并行处理。这是StarkNet VM和Polygon的zkEVM用来生成有效性证明的技术。

由于生成ZKP所需的密集计算性质,zkEVM可能不得不依赖于高级硬件,如图形处理单元(GPU)、现场可编程门阵列(FPGA),甚至专用集成电路(ASIC)。需要特殊的硬件来运行必要的计算以生成证明,这与需要特殊的硬件来根据工作量证明(PoW)的一致协议有效地挖掘块没有什么不同。两个硬件行业的成长差异在于认证者和矿工的选择过程。

证明者是负责生成有效性证明的网络利益相关者。另一方面,定序器负责将用户事务定序和打包成批,并将数据提交给第1层区块链。从技术上讲,排序器和证明器的职责可以合并为一个角色。但是,由于证书生成和事务排序都需要高度专业化的技能才能很好地执行,因此分割这些职责可以防止汇总功能不必要的集中。

如果认证者和分拣者的选择过程类似于矿工,依靠达成中本聪共识,用最高效的硬件奖励参与者,那么ZKP“挖矿”行业可能会沿着与比特币一样的PoW挖矿轨迹发展。然而,有几个原因使得特定认证者的选择过程更可能是一个类似于设计中的权益证明(PoS)的确定性过程,而不是中本聪风格的PoW共识。

首先,使用中本聪式的校准器选择过程意味着拥有最高效硬件的校准器将主导认证市场。为了避免证明者市场的垄断和证明者的重复用电,像Scroll这样的项目都在寻找替代设计来选择证明者,这需要证明者使用资产作为抵押,这与以太坊验证者被要求抵押32 ETH的方式不同。赌注模型的实现确保了证明者在游戏中有皮肤,并且可以对破坏网络安全和活动的行为进行惩罚,例如未能为指定的一批交易计算有效性证明。重要的是,对证明者的奖惩激励与ZK-罗勃上选择排序者的模型相平衡,使网络利益相关者有足够的参与来履行这两项责任。

确定性地选择认证者来生成证书而不是让所有认证者竞争生成证书的另一个优点是,它可以提高事务吞吐量和网络可扩展性。认证者的选择意味着几个认证者可以并行地为不同批次的交易生成证书,而不是所有的认证者都为同一批次的交易生成证书。然而,依赖于某种形式的赌注和削减的领导人选举制度的弱点之一是复杂性。与中本聪式的PoW系统相比,PoS系统依靠更复杂的制衡来保持参与者的诚实。例如,中本聪式共识通常只要求参与者(即矿工)出示工作证明以获得奖励。确定性PoS系统可能会对参与者(通常称为验证者)提出更多的要求,如存放资产、委托资产、对交易和区块进行投票、提出区块、监控其他验证者的行为等。

大多数zkEVM可能会在未经许可的情况下,通过选择确定性(基于分布)而非概率性(基于竞争)的认证者选择过程,来尝试最小化rollup的电力消耗。以太坊联合创始人Vitalik Buterin估计,根据PoW共识协议,计算zkEVM有效性所需的电力,对于ETH mining来说不到1%。zkEVM设计者的目标是尽可能减少认证时间,同时允许尽可能多的用户经济地访问认证生成。实现zkEVM兼容共识层的要求之一是将证明生成时间降低到相当于以太坊1层阻塞时间(平均13.5秒)。

只有zkEVM背后的规范变得清晰和标准化,ZKP硬件制造商才能真正成长和成熟。最后,预测的有效性证明,直到rollups采用并实施了一种未经许可选择证明者和排序者的模型,行业的用电量仍然难以计算。

zkEVM的竞争前景

短期内,各种zkEVM都在争先恐后的在主网上首发。然而,从长远来看,他们将在EVM兼容性(从语言到共识)和虚拟机效率方面展开竞争。一旦支持zkEVM的技术得到更广泛的测试、使用和理解,zkEVM可能必须与Optimal Rollups和其他L2可伸缩性解决方案竞争,以吸引用户采用它。

先发优势和后发优势zkSync、Polygon和Scroll团队的zkEVM实现正在竞争成为第一个在主网络上推出的。首先,在主网络上开始的优势可以归结为在吸引dapp开发人员方面领先于其他zkEVM实现。鉴于rollup和dapp的可组合性之间的互操作性的困难,这可能是一个特别重要的收获。Dapp可组合性指的是像构建块一样在dapp之上构建dapp的能力。这是以太坊分散金融(DeFi)生态系统的一个特别重要的特征。这使得Dapp开发者更有可能被吸引到L1或L2,而这些L1或L2已经有了最多的采用。

另一方面,由于zkEVM作为一项技术的新颖性,第一个zkEVM实现不太可能针对以太坊中的dapp开发人员进行优化。正如本报告中提到的,在字节码级别和共识级别与EVM完全兼容的zkEVM实现还没有准备好投入生产。更能原生支持以太坊dapp部署的zkEVM实现,可能不会先启动,但更具有EVM等价后来者的优势。等价级别越深,zkEVM的开发者的体验就越容易。换句话说,自2015年以来一直是主要dapp执行环境的EVM可以转移的工具越多,zkEVM dapp开发者的采用就越好。

通过EVM等价吸引dapp开发者是zkEVM实现之间第一个明显的竞争领域。虽然dapp开发者有很强的先发优势,但是技术还处于初级阶段,所以还有大幅迭代和提升的空间。来构建一个生产就绪的zkEVM。最终,游戏从无到有类似于创新者的困境3354。是做第一,尝试建立分发和社区好,还是做第二,推翻功能更好的先行者好?

虚拟机设计随着时间的推移,zkEVM的另一个竞争和改进领域是效率。如前所述,EVM并没有针对ZK系统进行优化,构建一个通用的ZK rollup可以证明基于以太坊的智能合约和dapps需要很大的开销。随着时间的推移,证明针对SNARK或STARK优化的其他虚拟机设计可能会降低EVM兼容性,这是Starkware团队的强烈观点。将Solidity编译进Cairo的Warp工具和其他类似工具都是社区驱动的倡议,因为StarkWare内部团队专注于尽可能提高StarkNet的VM的效率,而不是简单地与EVM兼容。

在以太坊上,值得注意的是EVM(以及相关的坚固性)无法在不破坏dapp向后兼容性的情况下进行重大改变或升级。自2015年EVM发布以来,开发者已经对EVM及其高级编程语言Solidity进行了修补,以提高次要方面的可用性和安全性。例如,在2019年以太坊伊斯坦布尔硬分叉升级期间,核心开发人员为EVM添加了一个名为“CHAINID”的新操作码,它将返回规范链的唯一标识号。这是为了通过允许节点检查CHAINID来防止升级的节点连接到未升级的节点。这是一个特别有用的升级,有助于防止“重放攻击”,在这种攻击中,恶意行为者可以利用坏节点发现。

以太坊的核心开发者始终坚持认为,在以太坊的发展路线图中,EVM将被进一步改变。新的操作码和预编译代码可能会继续添加到EVM中,这表明现有的zkEVM实现必须灵活地适应EVM的变化。然而,即使有了这些改进,Mina、Sui和Aptos等替代一级区块链仍有机会尝试不同的VM设计和智能合约语言设计,从长远来看,这可能会使EVM过时。ZkEVM实现主要着眼于在字节码和共识层面与EVM的深度兼容,长期押注于EVM在智能合约开发方面的关联性和主导地位。

最佳汇总过渡到ZK汇总最后,本报告中讨论的五个zkEVM实现击败了乐观的总结,如乐观或Arbitrum,这不是一个必然的结论。在技术层面上,ZK汇总比最优汇总更安全、更高效,也可能更具成本效益。然而,它们在证明为EVM设计的通用计算方面的灵活性还没有经过测试和广泛部署。一旦zkEVM上线,背后的技术更加成熟和健壮,欺诈驱动的乐观摘要(如乐观和Arbitrum)就有可能升级和过渡生成有效性证明。此外,混合摘要和多证明者系统使用欺诈证书来乐观地验证用户交易并间歇地发布有效性证书。随着zkEVM背后技术的成熟,逐渐加快有效性证书的生成时间是一个活跃的研究领域。今天,像Vitalik Buterin这样的以太坊核心开发者和像乐观的Kelvin Fichter这样的L2开发者正在认真地讨论这个问题。

已经在以太坊推出的Rollup,具有先存用户群的优势,理论上可以很容易地移植到Rollup的新升级版上,类似于2022年推出的Arbitrum Nitro。这种可能性可能是团队选择zkEVM支持者(不包括Scroll)犹豫是否完全开源他们项目的代码的原因,直到他们的主网络启动,直到他们的rollup建立了相当大的用户群,与其他现有rollup的网络护城河竞争。随着时间的推移,最优自卷到ZK自卷的可升级性表明,zkEVM不仅相互竞争,而且在更广泛的以太坊L2生态系统的背景下也是如此。

结论

最近对zkEVM的兴趣激增,引发了一些关于以太坊可伸缩性最终路线图的问题。在最真实的意义上,zkEVM(与EVM具有共识兼容性的ZK rollup)代表了对EVM主导地位的长期押注,通过联想,以太坊作为智能合约执行的主要平台。ZkEVM也是对以太坊可扩展性路线图的长期押注,因为它将聚合和抽象事务执行作为rollup,而不是将其与共识和数据可用性相结合。

虽然今年宣布了几个接近生产就绪的zkEVM,但该技术仍处于起步阶段。实现与EVM一致兼容的zkEVM仍是一个研究计划,可能需要几年时间才能投入生产。然而,zkEVM也是如此,它仅在一年前实现了与EVM的字节码级兼容性。Polygon、zkSync、StarkWare和Scroll实现zkEVM的快速发展,不断推动计算机科学和数学的边界,并超出预期。在以太坊主网上引入Polygon zkEVM和zkSync 2.0,将是用真实用户和dapp活动测试zkEVM的重要起点。

两个生产就绪的zkEVM的可用性和可扩展性不仅可能颠覆zkEVM协议的竞争格局,还可能颠覆最优上卷和替代L1区块链的竞争格局。如果zkEVM成功,最佳汇总将必须转换为ZK汇总设计,以保持长期竞争力。的替代者L1区块链也必须创新其虚拟机设计,以与可扩展的EVM竞争。ZKP在以太坊的准备性和适用性还有很多需要证明的地方,而准备投产的ZKP EVM的推出,应该算是这一新技术竞争格局的开始。

zkEVM持续关注和开发的一些领域包括它们的硬件设计和令牌经济学。使用哪种硬件环境来生成ZKP以及哪种rollup成功地分散了证明生成,还有待观察。这在很大程度上会归结到各个团队的社区建设,以及这些总结中的任何一个能在多大程度上成功触发dapp,尤其是DeFi dapps向其网络的大规模迁移。这些开发领域需要时间和迭代才能正确。然而,鉴于zkEVM试图在以太坊上实现的先进性及其对公共区块链未来的广泛潜在影响,这一进展将受到以太坊利益相关者、研究人员、密码学家和学者等的密切关注。

广告位
本文来自网络,不代表区块链网站|NFTS立场,转载请注明出处:https://www.qklwz.com/jzb/ytf/15472.html

作者: 大王不失守

上一篇
下一篇

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

返回顶部