来源 |joncharbonneau.substack.com
作者| Jon Charbonneau
翻译| Franci, ECN
引介
Kelvin 认为 ZK-rollup 是假的,但我认为任何 "rollup" 都不是真的,至少现在不是。那么,我们如何使它们成为真正的 rollup?
目前的 rollup 基本上都是需信任且需许可的:
来源: L2 Beat
在本文中,我会对以下几个方面进行概述:
-
强制交易打包机制—— 即便出现 rollup 运营者审查用户的情况,用户也应该能够强制打包其交易,以实现抗审查。
-
L2 定序器去中心化和 (可选) 本地共识—— 单一型定序器、PoA、PoS 领导者选举、PoS 共识、MEV 拍卖、基于基础层的 rollup、PoE,等等。
-
共享定序器和跨链原子性—— 这是真正有趣和完全新的东西。
-
MEV 可捕获设计—— 我将简要地介绍 FCFS (先到先服务) 的一些变化。对于加密的交易池,你可以参考我最近的帖子。
许多其他提高 rollup 安全性的要求将不在本文的讨论范围内 (比如减少升级密钥的权力、实现强健的和无需许可的证明,等等)。
Rollup 的工作原理
智能合约 Rollup (SCR)
首先,简单复习一下 SCR 的工作原理,这是我们当前在以太坊上常见的 rollup。从高层次来说,一个 SCR 基本上包括:
1. 一批有序的输入数组(在L1上,所以交易数据必须在 DA 层发布)。
2. (rollup 节点软件)在它们上面运行的代码。
3. 对这些输入运行函数产生的确定性输出(rollup 区块链)。
cr:How Rollups *actually* work - Kelvin Fichter
更具体地说,传统的定序器通过向其在 L1 的智能合约发布 rollup 区块的状态根和 calldata(最终以 data blob的形式)来对 rollup 区块生成承诺。新的区块不断扩展 rollup 对区块头。链上合约运行一个 rollup 的轻客户端,将其区块头的哈希值保存起来。在收到有效性证明后,或在欺诈证明窗口期过后,该智能合约就会敲定结算。如果一个未被敲定的 ORU 区块无效,它(以及所有后续的区块)会因为欺诈证明对提交而被回滚,最后成为孤块。证明帮助保护桥接:
交易 batch 的提交应该需要应用某种类型的保证金/押金规则,以抑制恶意行为的发生。例如,当一个欺诈性的 batch 被提交了 (即无效的状态根),押金将被销毁,并按某种比例分给欺诈挑战者。