1、证明系统与optimistic证明
让我们回归区块链的基础。区块链本质上是一个状态机,其状态会随着交易的变化而改变,而变化后的共享状态会所有被参与者所用。确保所有参与者就共享状态达成共识是至关重要的。为了更好地达成共识并消除对某一方的信任需求,区块链侧重于去中心化特性。然而,这种去中心化可能会限制扩展性,使其难以容纳更多交易。这些问题构成了区块链的三难困境。
以太坊作为最早的智能合约区块链之一,引领了rollup的创建。在rollup模式中,执行与以太坊相分离,但仍然存有一个检查有效性和惩罚恶意活动的系统。建立这个系统的方法有两种。第一种是optimistic方法,在该方法下,下一个状态是预先确认的,经过一个缓冲挑战期再最终确定。第二种方法是利用zk有效性证明,在该方法下,状态更新可以在低成本的验证过程中通过一个链上zk证明进行验证。虽然侧链是另一种选择,但我将其排除在外,因为侧链对以太坊结算的依赖程度很低。
由于实现过程简便,optimistic证明(又名欺诈证明或错误证明)是结算rollup状态更新的主要可行方法。
1.1证明系统的状态:zk和op
人们一度认为,zk证明系统将很快占据主导地位,optimistic证明系统将失去优势。人们通常期待zk证明系统可以为rollup提供更低的成本和更快的最终确定性,其在证明生成方面已经取得了重大进展,在基于mips、risc-v和wasm的通用zkvm构建上进行了各种实验。这些项目包括zkm、risczero、succint labs和fluent。尽管zk rollup有明显的好处,但开发具有成本效益的安全版本的挑战是巨大的。evm这类虚拟机的更新也存在挑战,因为很难在不损坏任何特性的情况下合并新功能。
由于存在这些挑战,目前在rollup生态系统中最常见的是optimistic证明系统,它占据了大部分tvl(约为l2总tvl的75%)。目前还不确定这种主导地位是否会在未来持续下去。然而,已有众多旨在优化证明系统的举措取得了很大进展。
1.2 optimistic证明制度的未来会怎样?
很多积极的研究和开发正在进行中,目标是改进optimistic证明系统,主要围绕以下三方面进行:
· 降低成本
· 去中心化排序、挑战和最终确定过程
· 减少soft finality(软最终性)和hard finality(硬最终性)
这三个领域都展现出了重大努力,例如最近的dencun升级,该升级包含了eip-4844,改进了数据压缩,以及交互式证明系统的开发。
在深入研究最新进展之前,有必要先来彻底了解一下既定概念和当前情况。首先,我们应该来看该领域的发展演变,然后深入研究optimistic证明项目的现状。
2、optimistic证明系统的发展史
optimistic证明系统不是一蹴而就的。有众多研究人员和开发人员努力构建机器人证明系统,以确保其在实际操作中可以无缝运行,目前该系统已保障180亿美元的资金安全。让我们回顾一下曾经的里程碑。
2.1过去—追溯历史
optimistic rollup最初是由以太坊研究人员john adler于2019年提出的以太坊的layer 2扩展解决方案。optimistic rollup的核心理念是将计算和数据存储从以太坊主网转移到独立的l2链上,同时仍然继承以太坊的安全保证。开发optimistic rollup的主要动机是考虑到以太坊主网上的拥塞和高交易费问题。随着defi协议和nft的日益普及,以太坊面临着扩容问题,阻碍用户体验和经济效率。
optimistic rollup主要由arbitrum和optimism两个团队进行实验和开发。这些rollup旨在通过处理链下交易并在以太坊主网上发布压缩交易数据和输出根,为以太坊提供可扩展性。由于它们为用户和dapp降低了成本,以太坊社区迅速采用了这些rollup。
optimistic rollup的关键特征是它们采用“optimistic”方法——在对交易进行简单的有效性检查后,它们假设所有交易是默认有效的,并且它们依赖欺诈证明机制,挑战者可以在设定的时间段(通常是7天)内挑战交易的有效性。如果检测到欺诈交易,则在链上执行欺诈证明以正确方式重新处理交易。这种乐观的方法允许optimistic rollup在以太坊主网上实现显著的扩展性改进。
过去曾有很多挑战。最初,像optimism这样的项目使用他们自己修改的evm(称为ovm),这限制了它与evm的兼容性。这些项目将继续采用集中的方法来解决回滚和挑战机制。这种方法带来了一种安全权衡,因为交易不是立即结束的,如果有限数量的参与者在挑战窗口期间检测到欺诈,则可以回滚交易。
2.2现状—不断进步,但也面临挑战
optimistic证明系统的最新发展显著提高了以太坊l2解决方案(如arbitrum和optimism)的效率和可扩展性。除了以太坊的dencun升级之外,optimistic rollup的其他优化也有助于提高效率。例如,arbitrum一直致力于完善其错误证明系统,以确保数据的完整性和安全性。
optimism通过其superchain(超级链)战略也取得了实质性进展,该战略旨在使用op stack创建一个由多个l2组成的协调的生态系统。superchain利用自定义和alt da解决方案、跨链消息传递和共享排序来促进无缝互操作性和可扩展性优化。
最近对optimistic rollup生态系统的增强已经显现了从非交互式欺诈证明到交互式欺诈证明的转变。交互式证明包括一个来回的对话,以有效识别和纠正错误的交易。这一变化旨在降低链上验证的计算成本和复杂性。
3、当前格局
让我们来看一下rollup的当前状态,重点关注在optimistic证明系统下运行的项目及其发展。
目前,arbitrum和optimism主要致力于改进optimistic证明系统。其他项目,如initia、dymension和rollkit,正在开发自己的rollup生态系统框架。
arbitrum和optimism正在努力改进欺诈证明的技术,而其他项目也在实现有趣的方法。我们来简要概述一下他们目前的活动和进展。
3.1 arbitrum—多轮证明和bold
3.1.1 multi-round proof(多轮证明)
arbitrum的证明系统使用“多轮欺诈证明”方法来验证交易。这个过程主要发生在链下,最终状态记录在以太坊的区块链上,以提高透明度。
该系统的核心特征是“assertion tree(断言树)”。使用eth发布bond的验证者对arbitrum的状态做出声明(或“断言”)。这些断言形成了一条链,每个断言都建立在上一个断言之上。然而,当出现相互矛盾的断言时,断言树会分裂出分支,这表明可能存在欺诈。
解决这些争议涉及到一种名为“dissection”的交互式证明技术。参与争议的验证者系统地缩小了他们的分歧,直到只剩下一个操作。然后该操作在以太坊l1上运行以确定其有效性。
具体步骤如下:
· 两个验证者对arbitrum的状态存在分歧。
· 他们逐渐将他们的争议减少到只剩一个计算步骤。
· 然后在以太坊l1上运行此步骤以验证哪个验证者是正确的。
arbitrum的方法以其高效而著称。通过隔离和检查有争议的计算,它避免了在以太坊上重新运行整个交易而带来的更高成本的过程,正如optimism的单轮欺诈证明所做的那样,因为单轮欺诈证明需要在l1链上进行全部计算。
3.1.2 arbitrum bold
bold(有界流动性延迟)是专为arbitrum链上的optimistic roolup量身定制的新的争议解决协议,旨在促进无需许可的验证。这种机制通过确保争议在预定的时间窗口内得到解决,从而降低了延迟攻击相关风险。
bold具有几个关键特性,是其功能的重要组成部分。首先,它引入了无需许可的验证,允许任何诚实的一方验证并绑定他们的资金,以发布正确的l2状态断言。此特性使诚实的验证者能够挑战并赢得与恶意参与者的争议。其次,bold保证争议将在固定的时间窗口内解决,目前对arbitrum one和nova设置为一个挑战期(约6.4天)。此外,解决争议的最长时间包括最多两个挑战期加上安全理事会可能进行干预的两天宽限期。最后,bold支持arbitrum进入stage 2 rollup阶段,确保任何人都可以验证该l2状态并向以太坊提交欺诈证明,这增强了该平台的去中心化特性和安全性。
至关重要的是,bold提倡无需许可的参与,鼓励任何诚实的一方参与验证过程。这种包容性旨在通过多样化参与和减少中心故障点,培养网络内的更大的弹性。目前,bold正处于alpha发布阶段,并部署在公共测试网络上。它还经过了两次审计。
3.2 optimism—错误证明vm,cannon
op-stack中的错误证明系统旨在挑战和减轻网络中的恶意活动。即将推出的错误证明虚拟机将是一个关键改进。该系统由三个主要部分组成:错误证明程序(fpp)、错误证明虚拟机(fpvm)和争议博弈协议。fpp检查rollup状态转换,以验证l2输出(l1输入),整理l1输出的争议。这种模块化架构允许独立开发和部署多个证明系统和独特的争议博弈,极大地增强了系统的灵活性和安全性。
fpvm是该架构中的一个最小且可组合的单元,由于与fpp分离,它可以执行用于证明交易的指令周期,同时不受以太坊协议更新的影响。争议博弈协议通过等分状态转换来协调挑战机制,将争议缩小到单个指令验证,从而允许在l1 evm上进行有效证明。该系统促进了一个包括各种证明方法的多证明未来,如zk证明和聚合证明系统。
3.3 initia—enshrined op-stack,opinit
initia是一个comsos l1区块链,它正在构建一个统一的、相互交织的rollup生态系统。initia非常类似于以太坊中的rollup生态系统,只不过是专为rollup自下而上设计的。initia l1的验证者为rollup运行排序器,基于optimistic证明的结算嵌入到l1区块链中。让我们看看这些rollup是如何工作的,这些rollup是由opinit stack构建的,opinit stack支持evm、wasmvm和movevm,具有通过ibc实现的原生互操作性。
opinit stack是一个旨在启动基于initia l1区块链的minitia l2的框架。opinit stack专门使用cosmossdk构建的,cosmossdk可帮助构建虚拟机无关的optimistic rollup,非常接近于optimism的bedrock接口。通过利用initia l1治理模型,它有效地处理欺诈证明纠纷,确保可靠的交易验证和纠纷解决。就像bedrock的挑战系统一样,被许可的挑战者可以删除未确定的输出。此外,通过l1提议,可以更改输出提交者。
opinit stack必不可少的两个主要模—ophost和opchild:
· ophost模块是为initia生态系统中的l1操作而设计的,利用了cosmos sdk功能。它包括各种消息类型和rpc handler方法,以促进诸如批量提交、桥创建、输出数据提议和输出删除等核心活动。
· opchild模块专注于l2操作,提供支持代币转移和费用池管理的机制。它还包括特定的消息类型和rpc handler,用于执行消息、确定代币存储和启动从l2到l1的代币提取,从而确保在initia架构内实现改进的l2功能。
3.4 taiko—多轮系统
taiko是一个默认的optimistic rollup,使用一个多重证明系统。该系统结合了optimistic方法和zk证明的使用。
这个过程从proposer(提议者)开始,他们从l2交易中构建rollup块,并将它们推荐给以太坊上的l1 taiko合约。这些提议区块被添加到l1合约中,不需要任何有效性证明。然后,prover(证明者)有机会通过提供bond来挑战所提议区块的有效性,这需要质押taiko代币。如果一个区块在挑战期内没有受到挑战,那么它将被认为是有效的,并在l1上被最终确定,并返回证明者的bond。在区块受到挑战的情况下,需要zk证明来确认区块的有效性。正确的prover,无论是最初的prover还是挑战者,除了拿回bond之外还会获得奖励。与此同时,错误的一方的bond将被罚没,一部分将被burn(燃烧销毁)。
有趣的是,taiko估计大约有1%的区块需要zk证明,这有助于减少计算开销,同时仍然提供有效性保证。为了增强其弹性,taiko支持plonk、halo2和sgx等多个证明后端,以防止潜在的bug或漏洞。这种方法允许dapp设置自己的信任假设和安全级别,展示了taiko对区块链可扩展性和安全性的贡献。
3.5其他—dymension和rollkit
3.5.1 dymension
欺诈证明是dymension生态系统的一个组成部分,旨在确保区块链状态转换的完整性。当rollapp(dymension l1中的rollup)排序器发布一个状态根时,rollapp全部节点监视这些转换。如果检测到无效的状态转换,这些节点通过收集区块内直到欺诈性状态转换之前的所有状态转换列表来生成唯一的欺诈证明交易。
这个集合交易,包括诸如块高度、交易索引、blob份额、blob包含证明和状态见证等细节,然后被发送到dymension进行验证。一旦提交,dymension全节点将验证数据并重新计算状态转换。如果计算的转换产生的临时状态根(isr)与发布的状态跟不同,则欺诈证明被验证,从而导致争议状态的回滚以及责任排序器的罚没。
当前dymension主网上的争议期被设置为大约12万个区块。由于当前每6秒产出一个区块,因此最终确定时间约为8天。
3.5.2 rollkit
rollkit的状态欺诈证明通过识别欺诈交易帮助减少区块链网络中的信任问题。它们用于由全节点和排序器产生的状态根不匹配的情况下。全节点创建一个在整个网络上共享的证明以供验证。如果确认不匹配,则需要采取纠正措施,增强安全性并分散监督。
4、 未来的发展:问题和解决方案
许多人曾经认为optimistic rollup不如zk rollup。随着zk rollup越来越多地投入生产,其安全互操作性和更快的最终确定性等优势众所周知,人们不仅疑惑,optimistic证明系统是否会地位大跌。我并不这么认为,因为针对optimistic证明系统中的主要问题出现了很多积极进展。
现在,让我们来看看这些主要问题是什么,有哪些潜在的解决方案?
· 运营中心化
· 高运营成本
· 缓慢的最终确定性
4.1去中心化—无需许可的验证
在optimistic rollup项目中,排序器的集中化是一个关键问题,因为它涉及到在一个旨在去中心化的系统中具有集中的控制点和信任点。在optimistic rollup中,排序器负责对交易进行排序,并将交易聚合到链下,再将它们提交给以太坊。这个中心角色赋予了排序器相当大的权力和控制力,这可能会带来一些中心化风险。
如今的大多数rollup都使用集中式排序器。在这种情况下,通常由单个实体或组织运行排序器,这就可能导致几个潜在问题。包括op-mainnet和arbitrum在内的大多数当前rollup都没有完全去中心化的系统。它们在提交交易包以及参与欺诈挑战系统方面都依赖于某些中央实体。然而,arbitrum有一个内置方式,如果排序器脱机或实施恶意行为的话,用户可以绕过排序器。
最近的blast回滚事件就是一个很好的例子,可以显示出中心化的好处和缺点。这一事件凸显了中心化l2解决方案没有足够的用户退出策略,从而具有很大风险。在blast关停以及与黑客攻击相关的交易被删除时就能很明显地看出这一点。运营rollup的中央实体可以影响整个生态系统,在本案例中,它帮助找回了6250万美元。
4.1.2 解决方案1:无需许可的验证
arbitrum和optimism是领先的optimistic rollup框架构建者,他们现在正在考虑将无需许可的验证作为使rollup更加去中心化的下一步。他们都准备在今年发布更新,让验证过程变得无需许可。
· arbitrum:arbitrum正致力于通过其名为bold(有界流动性延迟)的新验证协议实现无需许可的验证。该协议允许任何诚实的一方通过绑定他们的资金来发布正确的l2状态断言来参与验证过程。这消除了依赖中央实体管理验证者的需要,并使争议能够基于状态的正确性而非验证者的身份得到解决。
· optimism:optimism旨在通过转换到一个去中心化错误验证系统来实现无需许可的验证。最初,optimism依赖于由optimism安全委员会和optimism基金会管理的多签钱包。为了进一步去中心化,optimism引入了cannon,这是一个链下错误证明系统,目前部署在op sepolia上进行测试。通过使用cannon,optimism正试图从一个需要明确许可的系统过渡到一个任何参与者都可以参与交易验证和冲突解决的系统。该系统允许任何人通过提交由bond支持的取款声明来参与验证过程。
4.1.3 解决方案2:排序器的去中心化
排序器(负责构建和提议区块)的集中特性引起了对中心化的关注。为了应对这些挑战,rollup旨在从单个排序器模型过渡到多排序器设置,从而在多个独立实体之间分配块验证和提议的责任。下面是一些可以实现排序器去中心化的方法。
· 共享排序器:将排序外包给第三方服务,如espresso和radius。
· 分布式排序器技术(dst):利用机器群分配排序任务,提供高容错性。这可以被认为类似于为pos验证者构建的dvt解决方案(如obol网络)。
不同的rollup可以根据其具体用例拥有不同的优先考量,例如最大程度的去中心化特性、灵活性或地理分布。例如,像optimism这样的通用rollup可能采用更加去中心化的方法,但使用专用排序器集(如dst),而特定应用rollup(如游戏rollup)可能倾向于中心化模式,但使用共享排序器来确保可靠性并减少停机时间。这一领域还处于早期发展阶段。
4.2更低成本—数据可用性和交互式证明系统
optimistic rollup需要存储交易来重新构建挑战过程的状态。这可能导致较高的数据存储成本,这构成了optimistic rollup的大部分运营成本。然而,人们正在积极地研究这个问题,解决方案包括应用更多的压缩技术或使用alt da(可替代的数据可用性)。此外,交互式证明系统有助于降低挑战成本,因为挑战的计算量大大减少了。
4.2.1 解决方案1:低成本da
optimistic rollup正在有效地利用以太坊blobs和其他数据可用性(da)解决方案(如celestia)来解决与交易包数据发布相关的高成本问题。
在以太坊的情况下,optimistic rollup之前将交易数据作为calldata发布到主网,这是一个巨大的成本。然而,随着dencun升级,它们现在使用叫做blobs的新的数据存储格式,将总成本降低了90%以上。
除了利用以太坊自身的进步,optimistic rollup还与其他数据可用性决方案(如avail和celestia)集成。通过将交易包数据卸载到celestia,optimistic rollup可以减少对以太坊花费更高昂的存储的依赖,从而进一步降低与数据发布相关的成本。这种集成允许rollup在保持成本可控的同时维持高水平的吞吐量和交易速度。
随着越来越多的使用optimistic证明系统的rollup的推出,alt da领域现在正得到越来越多的关注。随着更多的rollup准备发布,alt da领域也会出现显著强化。目前,da既不构成运营成本的瓶颈,也非扩容瓶颈。
4.2.2 解决方案2:交互式证明系统
在optimistic rollup中,如果怀疑某交易是欺诈性的,网络上的挑战者可以挑战输出根的有效性。在挑战期内,必须提供欺诈证明来证明交易的不正确性。如果交易被证明的确是欺诈性的,则在链上验证该证明,从而导致交易无效。这种方法确保只有有争议交易才需要进行链上验证,从而使大多数交易保持在链下。
交互式证明系统邀请参与者在怀疑某交易是欺诈交易时生成并提交欺诈证明。管理rollup的智能合约根据排序器提交的状态根评估这些证明。如果发现偏差,则弃用不正确的状态,并将系统恢复到先前的有效状态。这种方法确保了有效的验证,而不会给以太坊网络带来不必要的计算负担。目前,这种计算是在链上执行的,这可能会非常昂贵。对于arbitrum来说,挑战所需的计算是在链下完成的,最终结果发布在链上。但该成本可能微乎其微,因为在目前的optimistic rollup中几乎还没有什么挑战。
4.3 缓慢的最终确定性—更快的执行和混合证明系统
optimistic rollup有两种类型的最终确定性——软确定性和快速确定性。软确定性是指排序器执行状态转换时的初始状态,与此同时在以太坊上发布批量交易。此时,交易被认为是“软确定性”的,rollup上的用户和应用程序可以放心地依赖此交易。然而,存在一个挑战期(通常在7天左右),在此期间任何人都可以提交“欺诈证明”来质疑该批交易的有效性。如果在挑战期内没有提交欺诈证明,则该交易包将实现硬确定性,不能被回滚或挑战。通常,原生桥需要硬确定性来转移资产。
在构建桥或多链dapp时,速度缓慢的软确定性和硬确定性都可能导致问题。这个问题正在通过更快的执行和混合证明系统来解决。
4.3.1 解决方案1:更快的执行
就软确定性而言,这一过程涉及到执行状态转换并将交易包存储在以太坊中。由于evm规范不支持并行执行和数据库优化,执行过程受到了限制。然而,像megaeth和heiko这样的项目正在构建并行执行环境,使用optimistic证明系统。
此外,rollup正试图通过更短的区块时间来更快地存储交易包。对于arbitrum来说,通过每250毫秒生成一个区块,或者在可配置的orbit链上每100毫秒生成一个区块,arbitrum确保了快速的交易确认。此外,arbitrum的设计利用了一种独特的“排序”模型,而非传统的“区块构建”方法,这种独特的排序模型通过消除交易在内存池中等待的需要,实现了更快的处理速度。同时还可以移除不良mev。
4.3.2 解决方案2:混合证明系统
混合证明系统,特别是那些结合使用zk证明与optimistic rollup的混合证明系统,通过减少结论验证所需的时间,显著提高了区块链交易的最终确定性。optimistic rollup(例如在optimism的op stack中使用的那些)本质上依赖于这样一个假设:除非受到挑战,否则交易就是有效的。这让争议或挑战窗口必不可少,可以对潜在无效的交易进行争议处理。然而,这个挑战期会导致交易确定性的延迟,因为挑战期必须足够长,才能确保可靠验证并支持任何潜在挑战。
zeth是一个建立在risc zero zkvm上的zk区块prover,它通过提供加密证据来证明交易区块是正确的,而不会透露关于交易本身的任何细节信息,从而支持对交易进行即时的有效性检查。这减少了对optimistic rollup所需的长期争议窗口的依赖,并大大缩短了最终确定时间。
像zeth这样的工具确保了交易排序和数据可用性机制得到可靠的维护,并且通过将挑战期从可能几天减少到几小时甚至几分钟,提高l2解决方案(如optimism)的效率。像zkm这样的项目也为metis开发了混合证明系统。
5、展望未来—optimistic rollup会被取代吗?
在我看来,optimistic rollup不会很快被取代。有许多改进正在进行中,并且出于简洁性它也可能被其他生态系统所采用。在以后的文章中,我将尝试深入研究“zk证明系统的状态”,讨论其最近的发展和即将发布的版本,并与optimistic rollup进行对比。然而,像arbitrum orbit和op-stack这样的框架的采用之势正在加速,我希望每个生态系统中都有更好的基础设施和工具,它们之间有更好的协调。
我在rollup领域看到的一个问题是就扩容问题。像sei、sui和solana这样的l1项目正在开发基础设施,以实现可靠的并行交易执行和数据库优化,旨在使区块链更容易被大众使用。当前的rollup可能无法处理像sui那样多的交易量并实现快速的最终确定性。然而,随着像fuel network、megaeth和heiko这样的项目使并行执行成为可能,我们可以期待很快就会在rollup领域看到性能改进。
发表评论