《Rollup 2.0: 去中心化排序器之争》

一、前言

时光飞逝,据Optimism 发币已过去一年有余,据Arbitrum 发币也已过去将近半年;发币仅是它们万里长征的第一步,在此期间,Optimism 实现了Bedrock 升级、推出了通用的模块化L2 堆栈OP Stack, 基于此诞生了Base 等明星Rollup; Arbitrum 致力于探索L3 推动Arbitrum Orbit 的应用。

Rollup 赛道在两位巨人的引领下,整个赛道的TVL 一度突破100亿美元,目前稳定在100亿美元上下。Rollup 作为以太坊“招牌”的扩容解决方案被津津乐道的背后,它们仍然存在非抗审查、中心化的属性。主流的Rollup 链普遍由官方运行中心化的排序器,虽然Arbitrum, Optimism, StarkNet 等Rollup 项目把排序器的去中心化列入路线图中,但均处于规划中短期内尚未实现的状态。去中心化排序器作为Rollup 去中心化最重要的一块拼图,对Rollup 本身而言具有非常重要的战略地位,也是民之所向。

据L2Beat 数据,截止至2023年10月1日L2 赛道的TVL
据L2Beat 数据,截止至2023年10月1日L2 赛道的TVL

二、Rollup 的交易费用

了解什么是排序器之前,先来聊聊Rollup 交易费用的组成。Rollup 的交易费用即用户在Arbitrum 等L2 交易产生的gas 费。

主要由2部分组成:
1)L2 执行费用
2)L1 数据费用

L2 执行费用:交易在L2 执行的成本(每笔在L2 链上发起的交易都要支付一笔执行费)
交易燃气价格 = L2 基础费用 + L2 优先费用
L2 执行费用 = 交易燃气价格 * L2 燃气使用量

L1 数据费用:将L2 交易发布到L1 的成本。通常情况下,L1 数据费用要高于L2 执行费用。

L2交易费用 = L2 执行费用 + L1 数据费用

排序器的净收入 = L2 的交易费用收入 - 排序器运营成本 - L1 数据费用

项目方运营的中心化排序器拥有一定程度上的定价权(比如L2 执行费用收高一点、L1 数据费用收高一点),这也是为什么几个知名Rollup 项目方赚得盆满钵满的原因。

什么是排序器?

排序器,顾名思义,即负责交易排序的角色。在比特币网络,交易排序的职责由矿工负责;以太坊由节点集合负责,它们均不是固定的角色,而是更具共识机制来确定谁有权参与顺序执行。

目前主流的Rollup 均运行中心化的单一排序器。用户在L2 的交易进入mem 池(此时mem 池中的交易是无序状态),排序器将交易排序、压缩成一组有序的批次,然后发送到以太坊的DA 层。

排序器运作流程
排序器运作流程

Rollup 必须要排序器吗?

答案是否定的。Rollup 上的交易完全可以绕过排序器提交给L1 基础层,由L1 来负责排序和结算,但也将面临较高的gas 消耗和较长的交易确认时间。

Rollup 排序器类似于使用了“快车道”,把成百上千笔L2 交易压缩聚合成单笔L1 交易,从而极大地降低了gas 成本。这也是目前主流的Rollup 都运行中心化排序器的原因,为用户提供更低的gas, 更快的交易确认,从而改善用户交易体验。

三、中心化排序器 vs. 去中心化排序器

中心化!

中心化的优势非常明显,想怎么给交易排序就怎么排,不需要换人排序,也不需要对排序的结果达成共识。也就意味着拥有非常快的交易确认速度,用户的体验感更好;

但中心化也赋予了排序器对交易排序极大的自主权,它可以肆意对交易进行排序,以最大化自己的套利机会,攫取MEV 价值,延迟用户交易甚至完全审查用户。

排序器可以在单一区块内通过改变交易排序攫取MEV 价值;危害更大的是,由于排序器控制着连续多个区块的排序,很容易执行跨区块MEV,从而造成规模更大的攻击。

上述情况都属于排序器主动作恶,有些错误并非排序器有意为之,但仍然损害了用户的体验和权益。打个比方,排序器不小心把一笔已经花费的代币交易重新包含在软承诺中,然后发送给L1 验证,可能存在交易迟迟无法得到确认的情况;又如单一的排序器掉线了,导致二层无法正常出块,网络长时间宕机。

鱼和熊掌不可兼得,但Rollup 性能的优化绝不能以牺牲去中心化和抗审查为代价。

去中心化?

如果中心化是1,那么去中心化就是多。不同去中心化排序器方案的实现路径有差异,但它们的核心理念是一致的,就是权力下放。

排序器不再拥有中心化对交易排序至高无上的权利,负责排序的角色基于特定的选举机制从一组排序器集合中选出,并进行固定周期的轮换。

去中心化杜绝了排序器源源不断地攫取MEV,也防止了单一排序器审查用户的交易。加之对应的作恶惩罚机制,也能有效地规范排序器的行为。

四、去中心化排序器赛道概览

绕了这么久,终于进入正题了。去中心化排序器,一种是Rollup 项目方自己做,另一种是借助第三方实现。借助第三方实现去中心化排序器,其实也可以称之为Sequencing-as-a-Service,排序即服务。

Espresso, Astria, SUAVE, Radius 等项目都专注于去中心化排序器方案,它们的实现路径各不相同。

1. Espresso

Espresso Systems 早期是一家专注于隐私解决方案的服务商,2022年3月宣布获得由Electric Capital, 红杉,Blockchain Capital 参投的近3000万美元的A 轮融资。Espresso Systems 目前基本转型做Espresso Sequencer,专门为Rollup 提供去中心化排序器的服务。

Espresso 融资情况
Espresso 融资情况

L2 交易在Espresso 排序器的排序机制下,大体经历的生命周期如下:

1)用户在二层发生的交易发送到Rollup 服务器(API);

2)交易进入mem 池,排序器(通过HotShot 共识选举)将交易排序并包含在一个区块中;

3)排序器将交易广播,经由其他节点达成HotShot 共识后出块,交易被执行;软承诺提供快速交易确认

4)排序器将包含交易的区块承诺附带共识证书(QC: Quorum Certificate)发送并存储在L1排序器合约中(证明该区块通过共识达成软最终性);

5)已执行该区块的Rollup 节点将新的Rollup 状态发送到L1(此时zkRU 需要附带有效性证明,ORU 打开挑战期)

6)L1 Rollup 合约通过验证排序器合约发送来的QC 检查状态更新的有效性。

L2 交易在Espresso 排序机制下的生命周期
L2 交易在Espresso 排序机制下的生命周期

这个流程看起来晦涩难懂,简单理解就是:

HotShot 共识在一群排序器集合中选出其中之一,由它负责Rollup 交易的排序并把交易包含在一个区块中;这个区块必须经由其他的Rollup 节点签署达成共识(2/3 以上HotShot 节点同意)才具有“最终性”,然后相关的区块承诺和新的Rollup 状态根才提交给L1 基础层做验证。

上面的“最终性”带了引号,这个带引号的“最终性”和不带引号的最终性不是一个概念。带引号的“最终性”是为了让Rollup 的交易更快地确认,延迟少,用户的体验更好;但Rollup 的交易最终还是要L1 基础层去做验证(zkRU 要验证有效性证明,ORU 要等待挑战期结束),验证Rollup 提交的交易没问题的情况下,这时Rollup 的交易才具有真正的最终性。

也就意味着:如果L1 基础层验证交易是无效的话,相关的已出块的L2 区块就会面临回滚。所以,“最终性”是为了让交易快速确认,最终性是为了继承以太坊的安全性。

无Espresso 的交易排序架构
无Espresso 的交易排序架构
集成Espresso 的交易排序架构
集成Espresso 的交易排序架构

Espresso + EigenLayer

Espresso 基于HotShot 共识解决了排序器轮换问题和交易“最终性”的确定问题,通过引入EigenLayer 解决排序器的准入问题。

EigenLayer 的再质押机制使以太坊的质押者同时成为Espresso 排序器成为可能,为HotShot 共识提供安全保障。简言之,以太坊的节点质押者可以通过EigenLayer 的再质押机制成为Espresso Sequencer(ESQ),以太坊质押者在获得PoS 节点收益的同时,也捕获了二层MEV 的价值。

ETH 持有者的潜在收益 = 原生网络的节点奖励 + L2 EVM + 其他PoS 链的节点奖励(使用EigenLayer 再质押机制),三重buff 极大赋能了ETH.

EigenLayer 的去中心化排序器方案
EigenLayer 的去中心化排序器方案

Espresso 作为通用类的去中心化排序器解决方案,生态合作项目除EigenLayer 外,还包括Arbitrum, OP Stack, Caldera, AltLayer 等一众明星模块化项目。

Espresso 生态合作项目版图
Espresso 生态合作项目版图

2. Astria

Astria 的定位是通用、无需许可的去中心化排序器,为不同Rollup 提供了开箱即用的共享排序器服务。融资方面,Astria 在2023年4月宣布完成由Maven 11 领投的550万美元种子轮融资,跟投机构包括1k(x), Delphi Digital, Lemniscap, Robot Ventures 等。虽然融资规模不大,但机构阵容非常华丽。

Astria 融资情况
Astria 融资情况

运行机制

Astria 去中心化排序器的运行机制和Espresso Sequencer 大同小异,目的都是通过把交易排序权利下放来弱化排序者的特权。具体来看:

针对排序器的轮换,Astria 提出了2种轮换机制:简单的领导者轮换(Leader Rotation)和拜占庭容错(BFT)共识算法。

1)领导者轮换
通过选举的排序器组成一个集合,排序器集合轮流对Rollup 交易进行排序。这种方式杜绝了单一排序器长时间持续垄断交易的排序权,一定程度上解决了对用户持续审查的问题。

Astria 的领导者轮换机制
Astria 的领导者轮换机制

2)BFT 共识算法
跟领导者轮换机制类似,轮到的排序器有权负责交易排序,但排序器集合中必须有2/3 及以上成员需要就这个排序达成共识。

两种方法各有优缺点:前者交易确认速度更快,实现快速出块,效率接近于中心化排序器。但折衷点是仍然很难约束轮到的排序器不去作恶;采用BFT 共识作恶的概率更小,需要集合中2/3 的排序器投票达成共识才出块。但需要一定的时间进行共识投票,造成了网络延迟的问题。

Astria 的BFT 共识算法
Astria 的BFT 共识算法

3. SUAVE

SUAVE 是Flashbots 构建的去中心化、即插即用的共享排序器解决方案,作为通用类方案,SUAVE 能为任意L1/ L2 提供内存池和去中心化区块构建。SUAVE 与前述共享排序器设计的不同之处在于,SUAVE Chain 本身是一条EVM 兼容链,通过区块“竞标”的方式实现交易排序。

SUAVE 架构

SUAVE 的架构由3大核心组件构成:通用偏好环境、最佳执行市场和去中心化区块构建。

1)偏好环境
偏好覆盖范围广泛,从简单的交易到复杂的事件。用户的偏好以交易的形式反映在mempool 中,偏好环境作为一个公共的mempool 将偏好汇聚在一起。SUAVE 提供的通用偏好环境使多链的用户偏好公开透明,消除了信息差,在一定程度上解决了跨链MEV 的问题。

2)执行市场
执行市场是由执行者参与的网络,执行者负责监听SUAVE memepool 并相互竞争,竞争驱动它们为用户偏好提供最佳的执行。可以理解为所有的执行者通过“竞标”的方式去实现用户的偏好,将用户交易产生的MEV 尽可能多地返还给用户。

3)去中心化区块构建
最后,依据收集到的偏好和最佳的执行路径,去中心化区块构建网络将它们包含在区块中。至此实现交易发现、交易排序、出块的全流程。

SUAVE 的核心组件
SUAVE 的核心组件

4.Radius

Radius 的定位是一个无需信任的共享排序层。与前述方案的实现机制均不同,Radius 通过启用加密mempool, 确保Rollup 交易被无需信任地排序,从而消除有效的MEV 和用户交易审查。

融资方面,Radius 于2023年6月宣布完成由Hashed 领投的170万美元Pre-seed 轮融资,跟投机构包括Superscrypt, LambdaClass 和Crypto.com .

Radius 融资信息
Radius 融资信息

Espresso, Astria 等基于共识机制的去中心化排序器在一定程度上降低了MEV 和审查风险,但是以牺牲网络可扩展性和时间效率为代价的,带来了一定的交易确认延迟(需要就交易排序达成共识)。此外,虽然交易排序处在一个去中心化的环境中,由于mempool 的相关交易是透明的,排序器仍然有作恶的空间攫取MEV. Radius 通过加密mempool, 相关交易信息对排序器不可见,旨在从源头扼杀排序器恶意攫取MEV 和审查交易的问题。

技术架构

Radius 技术架构可分为以下4大功能层级:排序层(Radius)、执行层(Rollup)、结算层和数据可用性层。

1)排序层

1. 用户提交加密交易和证明给排序器;
2.排序器验证证明并验证交易;
3.排序器对交易进行排序,在此之前无法解密交易;
4.排序器构建一个区块;
5.排序器将区块提交给 Rollup 执行。

2)执行层

1. Rollup 接收来自排序器的区块,并按照提供的顺序执行交易;
2.Rollup 将交易状态和状态证明提交给结算层。

3)结算层

1. 结算层接收来自 Rollup 的状态和状态证明,负责验证证明并确定交易的最终性;
2.排序层验证执行是否与顺序匹配。

4)数据可用性层

数据可用性层存储数据并确保数据可用。

Radius 各大功能层级架构
Radius 各大功能层级架构

mempool 的加密机制 - PVDE

Radius 采用基于零知识证明的加密方案“实用可验证延迟加密”(PVDE)来创建加密mempool.

具体流程如下:

当用户向排序器提交交易时:

1.用户生成一个时间锁谜题和一个对称密钥;
2.用户使用对称密钥对交易进行加密,加密后的交易进入mempool;
3.排序器对加密交易进行排序,排序器需要解锁时间锁谜题才能获得解密密钥;
4.排序器在解锁时间锁谜题前计算订单承诺,并将承诺提交的结算层(用于验证排序器按顺序将交易提交给了Rollup).

Radius 交易加密、解密过程
Radius 交易加密、解密过程

排序器的去中心化方案

加密mempool 确保了排序器的无需信任,但单点故障风险仍然存在。如果运行单一排序器 + 加密mempool, 排序器故障会导致网络宕机。为了解决这个问题,Radius 提出了多种去中心化排序器实现方案,包括秘密领导者选举机制、排序器组分片机制等。

当然,Radius 也可以选择参考Espresso 和Astria 的排序器轮换机制,同时实现交易排序的去中心化和无需信任。

区块空间优化

Radius 通过区块空间优化,旨在实现既保护用户又最大化Rollup 利润的目标。Rollup 采用先到先服务(FCFS)的排序机制,优点是能有效防止MEV, 弊端是必须牺牲区块空间拍卖的潜在利润。

为了解决上述交易排序的两难困境,Radius 通过将区块空间划分为顶部块空间和底部块空间2部分:

其中顶部块空间专用于用户交易,将用户交易加密,消除交易排序操纵,从而保护用户免受有害MEV 和审查风险;底部区块引入一个基于拍卖的交易市场,套利者可以将捆绑交易和它们的出价提交给排序器,排序器会选择出价最高的捆绑交易包含在区块中,这种方法能够使Rollup 利润最大化。

以上就是目前主流的通用去中心化排序器解决方案。对于Rollup 而言,面临着运行中心化排序器还是去中心化排序器?集成第三方通用排序器方案还是自己实现去中心化?采用哪种技术实现方案实现交易排序的去中心化?等多个维度的利弊权衡。

五、Rollup 间的博弈

权衡1: 是否去中心化?

Optimism, Arbitrum, zkSync, Base 等几大主流Rollup 靠运行中心化排序器赚得盆满钵满,去中心化将交易排序的权利下放必然涉及分润。在不考虑Rollup 赛道愈发激烈的竞争格局的前提下,谁也不愿意把这份到手的香饽饽分出去。但假设有Rollup 率先启动去中心化排序器,这或许是一个巨大的流量入口,在Rollup 细分赛道中形成示范效应,从而倒逼其他Rollup 项目将其排序器去中心化。

权衡2: 集成通用第三方 vs. 内部专用解决方案

排序器实现去中心化的路径总体而言就2种:一种是别人做好的拿过来用;另一种是自己下场干。像Espresso, Astria 等第三方能够为Rollup 提供开箱即用的去中心化排序器服务,那么Rollup 本身就能继续专注于产品差异化和优化性能,提高自身的核心竞争力;此外,集成通用类的去中心化排序器方案也更利于实现互操作性,带来包括跨Rollup 套利等更多的可能性。而此方案的弊端可能在于无法对Rollup 本身的原生代币进行有效的赋能。

Rollup 如果采用内部专用解决方案实现去中心化排序器,这是最耗时且昂贵的方案,但确实实现Rollup 原生代币赋能的最行之有效的方式。如StarkNet 的项目方可以要求用户质押协议原生代币成为排序器集合参与Rollup 的交易排序,并收取一定的服务费用,从而实现价值的累积。

权衡3: 采用哪种技术实现方案实现去中心化排序?

如前所述,实现去中心化交易排序的技术实现方案有很多,包括但不限于基于不同的共识机制、FCFS、区块竞价、加密mempool 等方案。每种技术实现方案各有优缺点:基于共识机制将受限于时间效率、加密mempool 无法实现Rollup 利润最大化等,当然也可以参考Astria 融合2种不同的技术实现方案。各种不同技术实现方案间的权衡点是所有Rollup 项目需要深思熟虑的问题。

写在最后

虽然目前Rollup 赛道的龙头Optimism, Arbitrum 均已发币,但这或许仅仅是个起点,真正意义上的竞争可能才刚刚开始。至少从目前的趋势看,去中心化排序器一定是兵家必争之地。

zk 系Rollup 项目也在悄然崛起,在竞争日趋激烈的环境下,走错一步可能都会造成无法弥补的损失。但在影响项目生死存亡的革新面前,Rollup 们无从选择,只能顺应大势。


关于作者:

参考文献

[1] Binance Research: Ethereum’s Rollups are Centralized. A Look Into Decentralized Sequencers

[2] Espresso HotShot: Consensus Designed for Rollups

[3] Based rollups—superpowers from L1 sequencing

[4] Introducing Astria: The Shared Sequencer Network https://blog.astria.org/introducing-astria/

[5] Introducing the Astria Development Cluster
https://blog.astria.org/introducing-the-astria-development-cluster/

[6] Why Decentralize Sequencers?
https://blog.astria.org/why-decentralize-sequencers/

[7] IOSG 详解 SUAVE:MEV 规模化增长的新十年

[8] The Future of MEV is SUAVE

[9] Radius Gitbook

Subscribe to helloyyy
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.