Master-Rollup 架构:以太坊共识保障下实现跨 L1 信息传输
作者提出了一个主汇总架构,旨在促进跨 L1 信息传输。该架构解决了双向跨 L1 通信引入的问题,例如与桥接、块最终性和信息摄取的正确性相关的问题。我们的架构利用以太坊 L1 网络的安全保证。
原文标题:Cross-L1 information transfer via Master-Rollup secured by Ethereum consensus
原文作者:Stanislav Vozarik,Gleb Urvanov,Shoeb Siddiqui,Peter Kris
原文来源:Ethereum
编译:Lynn,MarsBit
我们提出了一个Master-rollup架构,旨在促进跨 L1 信息传输。该架构解决了双向跨 L1 通信引入的问题,例如与桥接、块最终性和信息提取的正确性相关的问题。我们的架构利用以太坊 L1 网络的安全保证。
现有解决方案
桥接器 - 虽然它们直接在区块链本身上运行,因此在某种程度上是去中心化的,但由于经常采用各种(尽管很复杂)多重签名机制,因此对于桥接器来说,去中心化本身是有问题的。我们无法真正评估桥本身的效率,但假设二级链具有较低的流量、交易成本,从而具有更高的可用带宽。桥接器的安全性依赖于辅助链的安全假设,而辅助链的安全性通常远低于主链。这种安全级别的差异可能会导致未经授权的桥接撤回,从而使桥接资产变得无价。由于网桥作为对连接运行,因此保护多链连接需要部署多个网桥实例和跳转。
Rollups - 是生态系统的新成员,利用以太坊或其他 L1 网络的安全性。它们不依赖于二级链的较差安全性,但去中心化常常受到质疑。这是因为排序器(链之间的通信参与者/层)通常集中在单个实体或小组中。Rollup 的一个主要优点是效率,与主链相比,它们可以节省数千倍的成本或带宽。与桥类似,rollup 也是成对工作的,需要多个实例和跳转来实现不同链之间的通信。
主张
Master-Rollup - 同时连接到多个 L1 并使用以太坊 L1 作为结算层来协调各个 L1 之间的通信的汇总。效率和安全性继承自 rollup 架构本身。然而,加强去中心化和升级到多链还带来了我们正在积极努力解决的另一组挑战。
问题 1:L1 数据提取正确性
单链rollup,不存在问题
在每一次跨链通信中,都有参与者将信息从一条链传输到另一条链,因为链本身并没有真正以“区块链”方式看到彼此。最终的安全性来源于以太坊L1的安全性。如果 L1 发生错误或恶意读取,汇总合约可以验证其先前的状态并向 L2 发出请求,从而防止包含此错误读取的更新。L1 保持安全。
在上面的示例中,恶意排序器可能会伪造用户存款值。经过一些 L2 块后,最终状态返回到 L1。L1 上的合约将检查 L2 操作是否有有效的起点,并将其与之前的状态进行比较。在这种情况下,L1 知道 user1 没有存入任何价值,因此不可能提取它(或 L2 操作后的剩余部分)。当然,这也伴随着将任何 L2 块向上回滚到错误起点的必要性——逆转恶意/不正确的读取。
对于仅按其进入方式退出且可通过 L1 合约进行检查的资金,拥有一个或一组可信排序器从 L1 读取数据就足够了。然而,不受信任的排序器可能会向网络发送错误信息,并导致不断回滚。由于任何人或每个人都无法参与这个排序,我们解决了去中心化的不足。
Master-rollup,存在问题
由于Master-rollup资金可以从一条 L1 链进入并通过另一条链退出,因此其他 L1 无法回溯检查此条目是否正确。
这使得在 L2 上使用之前确认 L1 的原始读取是正确的至关重要,而不是仅仅依赖一组可信的排序器。
解决方案:RollDown(确保去中心化)
为了确保L1和L2之间的更新正确,两层需要以相同的方式处理;正如 L2 向上滚动到 L1 一样,L1 也需要向下滚动到 L2。在主汇总中,我们决定采用零知识方法来解决汇总解决方案。对于L2上发生的一切,都会计算出零知识证明并提供给L1进行验证。这确保了 L1 知道 L2 上的状态是正确的。Master-Rollup 架构也需要做相反的事情:确保 L2 L1 提供的状态是准确的。但是,由于计算强度和相关成本,计算 ZK 证明实际上并不可行。
Optimistic
与Optimistic rollup 类似,从 L1 到 L2 的更新不会自动接受,而是在争议期间等待队列中的 L2 摄取。在此期间,任何其他定序器都可以简单地将此读取取消为 false,因为它们也知道 L1 状态。争议随后被带回 L1,L1 决定哪一方是正确的,并相应地进行削减或奖励。
关于【Master-Rollup 架构:以太坊共识保障下实现跨 L1 信息传输】的延伸阅读
加密杂谈:对RaaS和Eigenlayer的一些看法
本文讨论了加密货币领域的热门话题,包括Rollup技术、Restaking、LRT、AVS和Eigenlayer。作者认为目前情况并不乐观,团队进展缓慢,Rollup部署过多也不利。对于Restaking、LRT、AVS和Eigenlayer的不满,存入ETH数量巨大,但空投效果不佳。团队发布庞大白皮书,但工作原理和概念仍不清楚。Eigenlayer决定暂不启用惩罚机制,但是否有必要为每个新兴协议提供近十亿美元的用户Restaking ETH并面临风险?惩罚机制将在不到一年内启用,操作者是否意识到Restaking风险?或许会有其他平台蚕食Eigenlayer的市场份额。
详解 OP Stack Rollup 流程及对应代码
Optimism Bedrock是当前版本的OP Stack,提供了启动生产质量的Optimistic Rollup区块链的工具。它包括op-batcher和op-proposer两个服务,负责从sequencer读取交易内容并rollup到链上,以及将交易状态rollup到合约。文中介绍了如何使用recordL1Tip和l1Tip来获取最新的L1BlockRef,以及如何收集和提交交易数据。每个事务仅使用一帧,如果通道已满,则仅返回剩余帧,直到成功发送到L1。sendTransaction将交易发送到一层,并更新交易发送状态。FetchNextOutputInfo获取L2上的区块output,NextBlockNumber获取下一批次需要提交的区块区间,SyncStatus获取L2块的状态和块信息,OutputAtBlock根据块高获取output,sendTransaction使用output构建stateRoot提交交易到一层链。
自动生成的流程图说明
注意事项:
- 排序者必须维持 L1 的权益。
- 如果排序器被发现向 rollup 发布错误的读取或不必要的取消,他们的 L1 权益将被削减。
- 每个排序器在每个时间帧被授予一个读取权限和n个取消权限,其中n等于活动集中其他排序器的数量。
即使除了一个排序器之外的所有排序器都存在恶意行为,单个诚实的排序器也有能力取消所有不正确的读取。最终,诚实的排序者可以将不当行为的证据发布给 L1。结果将是所有行为不当的排序者都会被削减,而诚实的排序者则会获得奖励。
这创建了“至少一个公平参与者”级别的正确读取安全性,而不是“至少 51%”,这通常在区块链上并在桥接解决方案中产生漏洞。它还允许任何愿意投入资金的人成为排序者,确保排序者集保持去中心化。
问题2:多L1通信和状态感知
Master-rollup 是一个特定于应用程序的rollup,充当不同 L1 之间的 L2 通信中心。通常,汇总需要在 L1 上镜像 L2 的整个业务逻辑,以便 L1 能够“重放”L2 上发生的操作。当将其他 L1 连接到 master-rollup 时,这会成为线性复杂度的问题。
Rollup 上的任何操作都分为 3 部分:
- 请求可以源自 L1 并传输到 L2,在我们的例子中,使用前面解释的下滚机制,或者它们可以直接源自 L2。
- 更新超出了本文的范围。Master-rollup 使用零知识证明来确保 L2 和 L1 上的操作都可以安全更新。由于连接到 master-rollup 的每个 L1 链可能会以不同的方式运行,因此问题在于更新的范围。它的相关性甚至可能性。这个问题从执行阶段开始。
- 执行。不同的链可能有不同的功能。因此,可能无法用另一 L1 上存在的操作逻辑产生的结束状态来更新一个 L1。所有人都理解的一个常见功能是传输。每个操作都可以分解或转换为与每个 L1 相关的一系列传输,作为操作的最终状态,而不是在 L2 上为每个连接的 L1 镜像整个业务逻辑。
示例:DEX 上的简单交换在内部只是用户帐户和持有池流动性的帐户之间的一系列转账。Master-rollup 通过相关性来标记这些传输,使其成为产生新状态的操作的一部分,而新状态是 L1 状态更新的一部分。在互换的情况下,相关性由资产的来源决定。这种转移很容易通过零知识证明,并且最终状态以及资产所有权会在每个 L1 上更新。这产生了原子交换的特定情况。相同的原理可用于多种不同的信息传输用例。
问题3:执行阶段的正确性,L2状态本身的正确性
Rollup 解决了桥接的一些安全问题,因为在 L1 端等待的“桥接”资产由于同样的安全缺陷而无法撤回。然而,与 L1 相比,大多数 L2 仍然面临较小规模的挑战。节点数量少意味着 51% 攻击的成本更低。虽然这在许多领域都带来了挑战,但主汇总架构中还存在另一个挑战。如果操作在同一个 L1 上发起和完成,如前所述,L1 可以检查结果的整个历史记录,直到初始请求。如果操作源自 L2 或不同的 L1 链,情况就会发生变化。在这种情况下,我们需要确保所有中间 L2 操作都是正确且最终确定的……
执行阶段的所有操作都包含在迟早最终确定的块中。根据区块最终确定的方式和时间,我们有不同类型的最终确定性。概率最终性并不能提供立竿见影的结果,而经济最终性则受到规模较小和成为多数选民成本较低的影响,这通常是大多数 L2 的情况。由于主汇总的性质允许提取到不同的 L1 链,因此需要立即且确定的最终性。仅仅证明 L2 上的操作有效是不够的,就像零知识证明一样,必须证明它们不可逆转地包含在区块链中。
主 rollup 的确定性最终性是通过连接到重新执行和最终化链来实现的。执行阶段以预定且不可变的方式在L2节点运行时完成。在区块最终确定之前,每个操作都会由该安全链以相同的确定性规则重新执行和验证。区块最终确定性由参与区块批准的利益相关者的签名来保证。为了证明区块已经完成,验证这些签名就足够了。链上签名验证是一个计算密集型过程。安全链不是直接在 L1 上验证这些签名,而是计算签名验证过程正确性的零知识证明作为最终性证明。主汇总块的这种确定性最终性及其证明被纳入所有 L2 到 L1 状态更新中,提供L2正确性和最终性的保证。ETH L1 分片是重执行链最有希望的候选者。
其他实际考虑因素和应用:
L1-L2 通信加速
由于从 L1 到 L2 的信息传输由一组去中心化的定序器和机制覆盖,以确保基于争议期的正确性,因此在 L1 上发布请求和在 L2 上安全摄取之间存在相当大的延迟。这为能够访问 L1 和 L2 的参与者提供了更快地传递此信息的机会。他们可以通过将自己的资金抵押在 L2 上来做到这一点,与传输信息的大小及其正确性成正比……例如,在没有加速的常规存款案例中,存款必须等待争议期结束,因此 L2 可以从 L1 方确定存款的合法性。只有在此期限之后,L2 才能确定并将这笔存款记入 L2 用户帐户。任何拥有该存款类型和金额资金的参与者,可以立即将这些资金释放给储户,并用后来铸造的代币代替储户将其偿还到他的账户。如果在争议期间存款被认定为无效,则不会铸造任何代币,并且加速服务提供商将损失转移的资金。这些参与者需要自行承担风险并收取费用,跨链间隙“传送”信息。我们将它们称为渡轮。
逃生舱口
逃生舱口是任何 rollup 中的必要组成部分,以便在 L2 失去活力时允许用户提取资金。在 master-rollup 基础设施中,逃生舱口不能始终处于活动状态,因为如果该链实际上并未失去活力,则撤回的值可能会转移到另一个 L1。
Uniswap X
Master-rollup 结构有潜力为原生货币对提供跨链流动性,这可能非常适合 UniswapX 或其他协议的跨链结算。
免责声明:本文仅代表作者个人观点,不代表链观CHAINLOOK立场,不承担法律责任。文章及观点也不构成投资意见。请用户理性看待市场风险,以及遵守所在国家和地区的相关法律法规。
图文来源:Stanislav Vozarik,Gleb Urvanov,Shoeb Siddiqui,Peter Kris,如有侵权请联系删除。转载或引用请注明文章出处!