TIMI:Foresight Ventures:第二代Optimistic Rollup

原文作者:ForesightVentures

0.为什么还需要看OptimisticRollup?

a)OP还是ZK?

尽管Vitalik早在几年前就认定了zkEVMRollup是未来,同时各家zkEVM(Scroll,zkSync,Hermez,Consensys)也如雨后春笋一般冒出来,但OptimisticRollup仍是目前Rollup生态的绝对主力,拥有80%Layer2的市场占有率以及前十Layer2方案的半壁江山.

zkEVMRollup的终局性扩容方案的存在,会让OptimisticRollup完全被淘汰吗?

OptimisticRollup和zkEVMRollup并非水火不容的存在,而是在长期内(甚至永久性的时间内)会是互补的方案.

对于App-rollup来说,Optimistic机制在开发与部署上仍然是最简洁易用的方案.

b)OP和ZK未成熟

OptimisticRollup的开发进度领先zkEVMRollup两年左右.但我们OptimisticRollup的标杆Arbitrum与Optimism都没有在主网完全上线开放的正式版FraudProof.

据Vitalik所说,以太坊基金会PSE的zkEVM电路有34469行代码.这庞大的代码量需要非常漫长的开发和持续的测试来进行打磨.我们在几年内都无法完全依赖ZK系统所带来的安全性.

c)OPZK

早在半年以前,Optimism的Kelvin就开始在推特上频繁地讨论Optimism结合zkVM的可行性.

他说Optimism的Bedrock不会只是OptimisticRollup的客户端,而是Rollup客户端.为了完全保证Rollup的整体安全性,客户端(或许和Arbitrum最近的收购有关系?)与证明的多样性(ValidityProof与FraudProof)才是Rollup真正的未来.

Vitalik则完善了Kelvin的方案,认为可以通过(OPZK)Governance的21组合来实现可靠的Rollup.

在zkEVM完全稳定和成熟前,工作流程如下:

发布区块

等待24小时

a)如果期间没有欺诈挑战,发布ZKP,完全Finalize区块.b)如果有挑战,则引入Governance通过2of3的模型来裁定最终结果.

在zkEVM稳定与成熟后:

发布区块

定期发布ZKP.

a)如果ZKP在指定期间正常发布,则依其为准.b)如果ZKP并未在期间正常发布(Proverfailure或有bug),则先引入Optimistic机制,直到ZK机制恢复.

这两种方案都需要Optimistic机制的存在,从而保证整个Rollup系统的liveness和safety.

因此Optimistic机制的发展仍然是Rollup宇宙版图中的重头戏.

1.第二代OptimisticRollup

第二代OptimisticRollup一词源于ArbitrumNitro的白皮书标题.略早与Nitro发布的OptimismBedrock也算是第二代OptimisticRollup.

两者的整体差异其实不大(如果你读Arbitrum和Optimism的blog,甚至会觉得是不是一样的),本质上都是与自己的一个新的majorrelease.第二代与第一代的差别也无外乎是如下优化:

开发者体验:更强的EVM等效性和兼容性,L1互操作性…

用户体验:更高的吞吐量,更低的gas…

但是在设计细节上仍然有取舍的不同,我们可以在这些差异上看到Arbitrum与Optimism在构建下一代OptimisticRollup上的推敲.

2.第二代OptimisticRollup设计选型对比

Arbitrum与Optimism的开发人员分别对两者的架构进行了比较和对比,这里我们就仅讨论与用户或应用开发者有关的点:

a)区块时间

区块时间设计的选择主要是两种:固定时间或者可变时间.可以理解成PoS和PoW的以太坊的区别.

Optimism:固定时间(2秒).

固定时间可以保证使用区块(block.number)来作为时间戳的合约的稳定性,比如Sushiswap的Masterchef合约.这些合约不用时间戳可能是考虑到矿工对时间戳有控制权(算是Selfishmining或者MEV?).

第一代的Optimism采用了可变时间1tx/block的设计,因此由于时间计算的问题,Stargate的奖励发放就出现了一些问题.

对于1tx/block的老设计,Optimism认为由于区块头的存在,存储链的开销太大了,除此之外状态根也需要频繁更新,成本过高.

Arbitrum:可变时间.

可变时间设计主要是为了减小tx确认的延迟.目前一秒最多可以创建4个区块,如果没有tx则跳过,因此是可变时间.

对于以block.number进行计时的合约,Arbitrum上block.number会直接返回以太坊的区块编号,因此不会有稳定性和适配上的问题.除此之外Arbitrum也提供了相应的预编译来提供L2的区块编号.

b)Geth的定位

Geth是以太坊的执行客户端,占据了约80%的节点总量.

Optimism:作为独立引擎.

将Geth作为独立执行引擎,而非库处理.好处就是可以完全重用之前的基础设施,同时可以无缝切换到其他执行客户端.

Arbitrum:作为库.

由于Arbitrum有更多的L2特定状态,例如L1和L2的gas定价,以及retryableticket,因此将Geth作为库处理,使用hooks进行调用.

c)L1-L2消息inclusion延迟

Optimism:~2分钟.

Bedrock的延迟是几个L1块的长度,最坏的情况是延迟十分钟.

Bedrock的架构更像一个L1,极端情况下可以通过reorg自己来应对L1的reorg.

超过10分钟没被L2包含的tx就直接被判定为无效了.

Arbitrum:10分钟.

Nitro延迟十分钟处理,如果超过十分钟,可以通过L1调用来强制包含tx.

Nitro的目标是为了用户体验,让L2永远不需要reorg.

两者都是在不同角度对用户体验进行了取舍.

d)L1-L2消息重试机制

消息重试机制主要就是为了解决L1-L2跨链过程中,L1确认了,L2失败的问题.

Optimism:合约中实现.

开发者可以参考L1OptimismPortal的实现,或者在合约内定义自己的重试机制.

Arbitrum:节点中实现.

重试机制在ArbOS节点中实现.

e)L2费用算法

L2的gas计算基本上就是L2executiongasL1calldatacost.

Optimism:重用EIP-1559.

好处就是钱包和其他基础设施可以无缝接入.

Optimism对L2gas的计算基本上是将L2executiongas的成本压到了最低(99%都是calldatacost).

Arbitrum:使用定制系统.

由于之前提到的可变区块时间设计,因此gas定价更加复杂,所以没有采用EIP-1559.

f)L1费用算法

Optimism:

L1gas水平到L2的传输几乎是即时的.目前Sequencer的收益基本完全来源于L1gas费用的乘数,EIP-4844后,它们的收入会来自MEV.

未来会通过L1-L2的消息传递来传输这部分数据,从而保证安全性(成为协议一部分,且可被挑战).

Arbitrum:

Arbitrum的L1费用算法通过L1gas的平均值来收取费用,且通过自己的控制系统来从实际支付的费用中来获取反馈,从而保证L1gas收取和支出的稳定.

整体策略中也包括,为了避免Sequencer过度收费,因此在gas价格低时才发布batch.

除此之外,两者也探讨了很多具体架构和技术细节上的区别,但内容过于domain-specific且与用户和应用开发者无关,因此大家可以自行观看.

3.Rollup的未来依然是Optimistic的

最近zkEVMRollup以及整个ZK生态的热度确实非常高(DevconBogota基本是ZKMEV其他),以至于大多数以太坊研究者或多或少忽视了OptimisticRollup的发展,以及在第二代中这些有趣的设计细节.

Optimistic作为Rollup的领头部队,正在L2UX和DX上进行试验性的开拓和开创性的创新.它们所做的可以为zkEVMRollup铺好地基.

在未来两到三年,甚至更长的时间内,zkEVMRollup完全可用之前,Rollup的主导地位仍会是由Optimistic占据,且80%的新Rollup(App-rollup)则会采用更为成熟和可用的Optimistic机制.

即使是在长期zkEVMRollup成熟后,为了Rollup的整体liveness和safety,Optimistic依旧会是整个系统中的重要基石.

Thefutureofrollupis(still)optimistic.

关于ForesightVentures

ForesightVentures押注加密货币未来几十年的创新历程,旗下管理多支基金:VC基金、二级主动管理基金、多策略FOF、特殊目的S基金「ForesightSecondaryFundl」,总资产管理规模超过4亿美元。ForesightVentures坚持“Unique,Independent,Aggressive,Long-term”的理念,通过强大的生态力量为项目提供广泛的支持。其团队来自包括红杉中国,中金公司,谷歌,比特大陆等顶级金融和技术公司的资深人士。

Website:?https://www.foresightventures.com/

Twitter:?https://twitter.com/ForesightVen

Medium:https://medium.com/@foresightventures-zh

Substack:https://foresightventures.substack.com

Discord:https://discord.com/invite/maEG3hRdE3

Linktree:https://linktr.ee/foresightventures

Links:

0:

https://hackmd.io/@vbuterin/zk_slides_20221010#/1

https://twitter.com/kelvinfichter/status/1553323106030260224

https://hackmd.io/@vbuterin/zk_slides_20221010#/7

1:

https://github.com/OffchainLabs/nitro/blob/master/docs/Nitro-whitepaper.pdf

https://medium.com/offchainlabs/arbitrum-nitro-one-small-step-for-l2-one-giant-leap-for-ethereum-bc9108047450

https://dev.optimism.io/introducing-optimism-bedrock/

2:

https://twitter.com/PlasmaPower0/status/1578804117027184641

https://norswap.com/bedrock-vs-nitro/

https://twitter.com/yaish_aviv/status/1555445520646250496

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

链链资讯

[0:15ms0-3:753ms