如何去像 Rollup 这样,更好地「使用」区块链,是一个值得探索的问题。
原文标题:《Foresight Ventures:Rollup 的现在,阻碍,竞赛和未来》
撰文:msfew
这篇文章着眼于以太坊的 Layer2 Rollup 宇宙(仅包括 Secured rollup),会从简单易懂的核心概念与机制设计出发,探讨目前 Rollup 的好与坏,畅想它们未来在去中心化,进一步扩容,可组合性,以及隐私等附加功能上的潜在路线与方案各自的优劣。
一个 Secured Rollup 就是像 Arbitrum 或 Optimism 这样模式,结算,共识,数据可用性均依赖以太坊等 L1,自己仅负责执行的 Rollup。
如果 Rollup 中结算,共识,数据可用性使用了除 L1 以外的方案,那么它就不是一个纯粹的 Secured Rollup,也就不是狭义的 Rollup。
给区块链扩容有两种方式: 一种是优化区块链本身,另一种是以更好的方式使用区块链。
Rollup 就是第二种,它真正的本质很简单,是更快更便宜且「可信」地使用区块链,来扩容区块链(基本特指以太坊)。
Rollup 是: 链上的智能合约 + 链下的聚合器。
就这么简单。而这两个特性结合起来就定义了 Rollup 也丰满了它的概念。
以太坊的原理是,每个节点都存储且执行用户提交给它的每笔交易,所以这么一个去中心化网络非常昂贵。
后文是以 Aribitrum 和 Optimism 为代表的 Optimistic Rollup,与以 zkSync 和 StarkNet 为代表的 zk Rollup 两大 Rollup 的机制原理,可供读者简单理解。
Optimistic Rollup 顾名思义是乐观的,采用的类似是无罪推定,大家会默认相信每个执行是正确的,通过每个批次状态可被通过欺诈证明挑战而保证安全性。
用户在 Arbitrum 提交交易,Arbitrum 的 sequencer 对交易进行执行,分批次将状态根与交易数据完整提交到以太坊主网上的智能合约中。
Optimistic Rollup 执行产生错误了怎么办?
Optimistic Rollup 有一个争议验证周期,也就是说上了链之后的数据还要过比如一周的时间才会真正地被敲定 Finalized,期间任何人都可以对它进行挑战,证明批次不正确。
zk Rollup 顾名思义是用了 zk 零知识证明技术(实际上是 Validity Proof),采用的类似是有罪推定,大家会默认质疑每个执行都是错误的,通过每个批次所包含的证明保证安全性。
用户在 zkSync 提交交易,zkSync 的 sequencer 对交易进行执行和存储,分批次将状态证明和新状态完整提交到以太坊主网上的智能合约中。
zk 如何证明自己的执行不是错误的?
Prover(大多数情况下就是 sequencer)会对交易的执行生成无法伪造的证明,证明这些新的状态和执行是正确的。Sequencer 会把证明等数据压缩后提交到以太坊主网中的智能合约进行验证。
它们如何压缩数据,从而减少 gas fee?
Rollup 可以在每个交易的字节数上进行压缩,包括 Nonce 和签名等。对于 zk Rollup 来说,它可以进一步压缩,不用将与状态更新无关的数据上链,因为 zk 证明已经可以证明状态更新的正确性,而 Optimistic Rollup 却由于需要能够被挑战,因此没法忽略这部分数据。
它们俩为什么都要完整状态?
因为为了防止 sequencer 跑路,我们可以通过以太坊上的数据来重建整个 Layer2。这就是数据可用性的概念。
如果实在还是理解不了,可以查看下面的图解。
Optimistic Rollup 的设计更像是 Arweave,通过经济学和博弈来设计机制,性能好但其实无法保证 100% 的正确。
zk Rollup 的设计则更像是 Filecoin,通过密码学和数学来设计机制,可以保证 100% 的正确但永远会有额外的计算和时间开销。
它们的区别就是一个用了挑战期来保证发生错误可以被纠正,一个用了密码学来保证错误不可能发生。
我们在后文会通过两者的终局表现来详细对比它们。
首先我们来盘点一下 Rollup 网络整体的优秀之处:
除此之外,如果对子网与 Rollup 的对比感兴趣的话,可以参考我们之前的研究,以及 Toghrui 的观点。
更细化地来说,各大 Optimistic Rollup 和 zk Rollup 分别给出了如下的表现:
除了以以太坊为主网的 Rollup 以外,还有这些:
Rollup 方案不同的设计有非常多的独到之处,真正地服务了无数的用户,带来了更好的 Crypto 与区块链体验。
上面一章的表扬后,我们会在本节指出 Rollup 一些需要解决的问题:
Rollup 网络丝滑的用户体验是通过对安全性的妥协而得到的,网络很多组成部分是中心化的,虽然有以下三点可以对这个问题进行「狡辩」:
但是 Rollup 的中心化仍然会导致 censorship 与安全性极低等问题。目前它的中心化主要体现在:
在我的设想中,作为一个网络或者协议,最终必须是去中心化且开源的,否则就违背了 Crypto 和 Web3 的精神。
Rollup 目前所展现出来的超高性能是「假的」,真实的 Finality 并没有那么优秀,且性能依然有提高空间。这是一把双刃剑。
当用户在 L2 提交交易后,马上会得到交易成功或者失败的反馈,但是其实这个即时的用户体验仅是在 L2 上的 Finality。
在数据没有被提交到 L1 或 Prover 还在证明或仲裁窗口期的期间,这些数据并未取得 L1 Finality。所以 Rollup 的用户体验那么优秀,其实是因为用户通过 Rollup 借用了一些时间,让用户先拿到一个 soft confirmation。
由于以上的设计,导致如下问题:
我们以 Optimism 的代币为例,管中窥豹地来研究 Layer2 Rollup 的商业和经济机制,代币模型,与 MEV。
开放网络的商业模式,改善代币机制,处理 MEV 会是 Rollup 网络在发币与去中心化的必经之路上的三座大山。
我不太想和其他文章一样去对比 Optimistic 和 zk Rollup 两个阵营的 TPS 等纸面性能(如果好奇的话可以详细阅读文末更多参考资料),而是会从它们的本质和特性,以及长期终局表现来对比:
对这张图的详细解读和值得关注的点如下:
虽然这张图得出了 Optimistic Rollup 的性能会在长远角度高于 zk Rollup 的结论,但是由数学所保证的信任是更强的。我认为 Rollup 性能的终局是 Optimistic,但是真正总体的终局会是 zk。
设计上很完美,工程实现的难度依旧巨大,上面的对比其实依然和 TPS 的对比一样,比较纸上谈兵。我们还是要从实际出发,去从一个 Rollup 网络的安全性,去中心化,和实际的表现与生态来观察。
对比了 Optimistic Rollup 与 zk Rollup,我们其实也全面了解了它们未来对性能的优化方案。那么在其他角度,Rollup 未来的发展会是怎么样呢?
在去中心化角度,我们聚焦了 sequencer 和合约升级的问题,未来,一个 Rollup 必须是去中心化的,那么就需要如下的去中心化设计:
这里补充一个小的资料,通过对 Arbiturm 和 Optimism 文档的对比,可以体会出它们对去中心化略有不同的态度。
Rollup 的可组合性就是不同 Rollup 上的智能合约直接互相读写的能力。
对于以太坊上的 Rollup 来说,其实以太坊作为 settlement layer 是 Rollup 们的共享桥梁。未来 Rollup 间的可组合性很可能大多是通过 L2 ⇒ L1 ⇒ L2 这样来形成一个调用(比如 StarkNet 设计的 dAMM)。
而真正的可组合性却由于 Rollup 间机制不同,无法互相验证的问题而难以被实现,需要更多探索。
对于功能上的拓展,zk Rollup 更加有潜力。L3 的概念让 App-specific Rollup 特别有吸引力,Immutable X 也已经宣布自己会在 StarkNet 上额外进行协议部署,让其能作为一个 L3 存在。
L3 的吸引力在于:
我预想中 L3 最有趣的功能会是:
但 L3 的挑战是 DA 到底如何处理。我们可能会采用以下几种不同的模式:
以上就是我们对 Rollup 所需要的理解。
除此之外,Rollup 创造了无数的新话题: L3,模块化区块链,数据可用性方案,账户抽象所带来的 UX 提升,新的技术栈,新的编程语言,新的开发者,新的审计机构…
Rollup 的一切都那么崭新,那么光鲜,但又那么稚嫩…
如何去像 Rollup 这样,更好地「使用」区块链,是一个值得探索的问题。
相关资料:
https://twitter.com/sanjaypshah/status/1532396051075719170
0a:
https://vitalik.ca/general/2021/01/05/rollup.html
https://twitter.com/bkiepuszewski/status/1532617975433502721
https://mirror.xyz/0xaFaBa30769374EA0F971300dE79c62Bf94B464d5/k8Fr68ELdjIwJpGPpag_dnUarnypD5IUahpp6wT0qmk
0b:
https://www.paradigm.xyz/2021/01/how-does-optimisms-rollup-really-work
https://www.paradigm.xyz/2021/01/almost-everything-you-need-to-know-about-optimistic-rollup
0c:
https://blog.matter-labs.io/introducing-zk-sync-the-missing-link-to-mass-adoption-of-ethereum-14c9cea83f58
https://www.reddit.com/r/ethereum/comments/ty4myx/how_does_zkrollup_validation_work/
0d:
https://starli.medium.com/l2-deep-dive-into-ovm-e2229052ed00
https://starli.medium.com/l2-my-summary-1883a6f1368e
1:
https://twitter.com/toghrulmaharram/status/1531956445490601984
https://www.alexbeckett.xyz/a-snapshot-of-the-current-rollup-ecosystem/
https://twitter.com/epolynya/status/1532560096433033216
2:
https://offchain.medium.com/todays-arbitrum-sequencer-downtime-what-happened-6382a3066fbc
https://twitter.com/mt_1466/status/1491403782290558977
https://kelvinfichter.com/pages/thoughts/tps-is-dumb/
https://twitter.com/bkiepuszewski/status/1533347316702257153
https://twitter.com/bkiepuszewski/status/1533347287400865792
https://newsletter.banklesshq.com/p/the-layer-2-token-endgame?s=r
https://fuel-labs.ghost.io/token-model-layer-2-block-production/
https://twitter.com/norswap/status/1536071589241946112
3:
https://medium.com/starkware/starknet-alpha-0-9-0-dce43cf13490
https://medium.com/offchainlabs/optimistic-rollups-the-present-and-future-of-ethereum-scaling-60fb9067ae87
https://www.alexbeckett.xyz/the-benefits-of-optimistic-rollups-compared-to-zk-rollups/
https://twitter.com/nickels_eth/status/1529947990403825676
https://blog.matter-labs.io/evaluating-ethereum-l2-scaling-solutions-a-comparison-framework-b6b2f410f955
3graph:
https://twitter.com/sreeramkannan/status/1530778827466502144
https://twitter.com/sreeramkannan/status/1530790559064829955
https://twitter.com/sreeramkannan/status/1530773769379205120
https://twitter.com/sreeramkannan/status/1530793792361537536
https://www.alexbeckett.xyz/the-path-toward-scaling-rollups/
https://twitter.com/yezhang1998/status/1530892694066974720
https://twitter.com/sreeramkannan/status/1530773572372791296
https://medium.com/privacy-scaling-explorations/zkopru-on-testnet-ba5b2d65ffa1
https://twitter.com/sreeramkannan/status/1530807626744750080
https://twitter.com/sreeramkannan/status/1530806237691990016
https://twitter.com/henrlihenrli/status/1531894565619343361
https://www.alexbeckett.xyz/the-path-toward-scaling-rollups/
https://kelvinfichter.com/pages/thoughts/hybrid-rollups/
4a:
https://medium.com/ethereum-optimism/our-pragmatic-path-to-decentralization-cb5805ca43c1
https://twitter.com/StarkNet_ZH/status/1514158529665396737
https://polynya.medium.com/brainstorming-sequencer-consensus-mechanisms-d7304bae4765
https://www.alexbeckett.xyz/decentralized-sequencers-where-do-we-go-next/
https://blog.polygon.technology/zkverse-deep-dive-into-polygon-hermez-2-0/
https://twitter.com/ChainLinkGod/status/1533618278538457088
https://twitter.com/jon_charb/status/1519443321206226950
https://twitter.com/sui414/status/1532088483296120832
https://docs.hermez.io/zkEVM/overview/#what-is-polygon-hermez-20
https://community.starknet.io/t/starknet-decentralization-tendermint-based-suggestion/998
https://ethresear.ch/t/proof-of-efficiency-a-new-consensus-mechanism-for-zk-rollups/11988
https://ethresear.ch/t/a-design-of-decentralized-zk-rollups-based-on-eip-4844/12434
4b:
https://www.alexbeckett.xyz/composability-in-a-rollup-ecosystem/
https://medium.com/starkware/damm-decentralized-amm-59b329fb4cc3
4c:
https://twitter.com/jon_charb/status/1519443321206226950
https://twitter.com/sui414/status/1532088483296120832
https://twitter.com/chrisyicheng/status/1535954524145299456
https://twitter.com/toghrulmaharram/status/1536043923931598850
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。