结合预确认与 Based Rollup 以实现同步组合性

文章提出了一种结合“基于L1排序”(Based)与“中心化排序”(Sequenced)Rollup优点的混合设计方案。通过引入三种不同类型的L2区块及特定的时序机制,该方案旨在保留Sequenced Rollup的低延迟特性,同时实现Based Rollup与以太坊L1之间的同步组合性。

目前主要存在两种类型的 Rollup:

  • Based Rollup:Rollup 上的交易排序由 L1 决定。Rollup 区块本质上就是一个 L1 交易,其区块顺序与这些交易在 L1 上出现的顺序完全一致。
  • Sequenced Rollup:交易排序由链下机制(如中心化排序器或 BFT 共识)决定。虽然 Rollup 的历史会定期提交到 L1,但排序决策显然是由链下机制做出的。

Sequenced Rollup 的主要优势在于其延迟远低于以太坊 L1。而 Based Rollup 的主要优势在于能与以太坊 L1 实现同步组合性(Synchronous Composability)。通过直接包含整个 L2 区块,并在其前后执行操作(包括在失败时回滚所有内容的后置断言),交易可以同时使用 L1 和 L2 的流动性。

本文将展示如何将这两者的优势结合,尽管这会受到一些限制。

设计方案

sharedsequence.drawio

在该方案中,存在三种类型的 L2 区块:

  • 常规排序区块(Regular sequenced blocks):需要排序器证书(如中心化服务器签名、2/3 委员会投票等)才有效,且发布频率很高。
  • 槽位结束排序区块(Slot-ending sequenced blocks):需要排序器证书,并附带一条特殊消息,声明在当前 Slot 期间(且 L1 父区块匹配的情况下),在其基础上构建 Based 区块并包含在 L1 中是有效的。
  • Based 区块:任何人都可以构建并包含它们,但必须构建在“槽位结束排序区块”之上(或者可能构建在另一个 Based 区块之上)。

L2 排序器的工作是玩一场“时间游戏”。通常,他们以极低的延迟发布排序后的 Rollup 区块。在 Slot 即将结束时,他们会发布一个“槽位结束排序区块”——发布时间要足够早,以便 Builder 能够制作 Based 区块并将其包含在内;但也要足够晚,以尽量缩短无法享受极低延迟的时间段。最后,一旦确定 L1 区块已确认,他们就会立即开始为下一个 Slot 制作排序区块。

如果在给定的 Slot 中没有包含 Based 区块(无论是由于没有人及时构建,还是由于提议者缺失或出现故障),排序器将在下一个 Slot 开始时,直接在上一 Slot 的“槽位结束区块”之上进行构建。

方案特性

  • 回滚一致性:该设计仅适用于愿意随 L1 回滚而回滚的 L2。因为如果 Based 区块回滚,任何在其基础上构建的排序区块也将回滚。即使在理想的 L1 最终性机制下,等待包含 Based 区块的 L1 区块最终化也会产生无法接受的漫长延迟。
  • 延迟表现:在正常情况下,围绕 L1 区块发布时间的延迟应该非常短。L2 发布其槽位结束区块,Builder 立即在其基础上构建 Based 区块,提议者随后制作包含它们的 L1 区块,证明者(Attesters)在提议者提议后立即进行证明,从而为新的排序区块扫清障碍。
  • 安全性考量:过晚发布槽位结束区块没有安全风险,最坏的情况只是没有人基于它进行构建。然而,过早发布下一个 Slot 的第一个排序区块存在安全风险,因为如果排序器在被重组(Reorg)的区块上构建,他们的区块也会被重组。
  • 最长延迟情况:最长的延迟出现在提议者缺失的情况下,因为证明者会等待以确保没有提议者出现,然后才发布证明。
  • 去中心化程度:该设计并未获得 Based Rollup 的无许可(Permissionlessness)优势,因为构建 Based 区块需要来自“槽位结束排序区块”的排序器证书。要实现无许可,最简单的路径是在 L1 上引入强制包含通道(Forced-inclusion channel)。Based 区块的 Builder 可以负责包含强制包含收件箱中的所有交易。
  • 原文链接: ethresear.ch/t/combining...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
以太坊中文
以太坊中文
以太坊中文, 用中文传播以太坊的最新进展