来源: Flashbots
根据以太坊社区给出的定义:MEV 是指通过包含/不包含/以及排序区块中的交易,从区块生产中提取的超过标准区块奖励和 Gas 费的最大价值。
链上金融活动日趋复杂,MEV 也随之不断积累。据不完全统计,目前 MEV 已接近 7 亿美金的体量。这仅是在 PoW 时期以太坊一层的语境下,如果把 The Merge 发生之后,以及各个 Layer 2 与 Alt-L1 考虑进去,保守估计 MEV 的总体量将超过 10 亿美金。
来源: Blocknative, Flashbots, IOSG Ventures
在以太坊交易的生命周期中,我们可以抽象出 MEV 供应链。本文主要讨论 Builder 和 Validator(Proposer)的部分。
在当前以太坊的协议层设计中,区块构建者(Builder)和区块提议者(Proposer)是同一实体——在 PoS 之下,他们首先是 Validator 的子集。这一实体被伪随机地从广泛的 Validator Set 中选择出来构建区块、并向 PoS 网络提议区块。
来源: Blocknative, IOSG Ventures
上图基本阐释了区块构建的过程。Builder 获取交易的来源主要有三种:公共交易池(mempool)、私密交易 Channel(如 Flashbots Protect)和 MEV 搜索者提交的 Bundles。Builder 将这些交易构建成一个区块,连同参与拍卖的出价递交给 Relay。
在 MEV 不断增长的趋势下,这种 Builder 和 Proposer 作为同一实体的设计逐渐显现出弊端:相较普通的 Validator 而言,大型 Validator Pool 有更多机会去实现 MEV;此外,他们显然比普通 Validator 有更强大的 MEV 捕获能力,这样导致了严重的中心化问题。于是,PBS(Proposer-Builder Separation)提出把 Builder 和 Proposer 的分离开来。
分离之后,无论普通 Validator 还是大型 Validator Pool,都把区块外包给专业的 Builder 进行构建,以此最大化利润,而自己只需要做「提议」一件事情。
目前的 PBS 分为协议层和非协议层实现,两者的区别是前者内嵌于以太坊本身,技术上具有强制性;而后者指的是 PBS 是可选项,具有非强制性。
协议层 PBS(Danksharding)
协议层 PBS(In-protocol PBS 或 Enshrined PBS)将在以太坊 Danksharding 实施中引入,使 PBS 成为协议层的设计。届时 Builder 除构建区块之外,还需要在约 1 秒内计算 32 MB 数据的 KZG 多项式承诺,并在 P 2 P 网络中进行分发。
非协议层 PBS(MEV-Boost)
Flashbots 提出了一个开源软件 MEV-Boost,作为 PBS 的非协议层实现。这是一个开放市场,即 Builder 专注于构建区块,尽可能实现每个区块的利益最大化。在参与拍卖后,最有利可图的区块被提交给 Proposer。后者只需要简单地提议这个区块,相当于出售其区块空间。作为回报,该区块的 Proposer 可以获得区块构建者支付的费用。据估计运行 MEV-Boost 之后,验证者的质押收入将提升超过 60% 。
来源: Flashbots
以上是 MEV-Boost 的大致工作流程。
首先,Validator 除运行验证者客户端、共识客户端和执行客户端三个软件外,还需要运行 MEV-Boost。
Builder 从交易订单流中获取交易和 Bundle,并按各自的策略构建区块。
来源: Flashbots
Relay 作为 Builder 和 Proposer 之间的双向通信渠道,可以连接到一个或多个 Builder,并验证 Builder 提交区块的有效性和出价,将有效的最高出价提交给 Proposer。
Proposer 可汇集一个或多个 Relay,从中选出最有利可图的区块,并进行提议。
关于非协议层 PBS 与区块构建,衍生出来一些有趣的话题,下文将一一讨论。
在供需关系上,Proposer 和 Builder 其实在早期已经实现了一定程度上的分离。
复杂的链上活动使 MEV 的机会日渐显现。在 PoW 中,拥有强大算力的矿工掌握了出块权,但是他们搜索 MEV 的能力一般,大多只是单纯地选择支付的 Gas 费高的交易来生成区块;另一方面,搜索者捕获 MEV 机会的能力很强,但是出块权不在他们手上。
起初,没有一种确定的方式让矿工包含这些搜索者提交的交易;搜索者只能尽可能拉高支付的 Gas 费,以期其提交的交易被包含。但这是一种公开的「拍卖」,相当于 Gas War,即便出价者最终失败也必须支付费用,并将造成网络负载和推高 Gas 价格,产生严重的负面外部性。
于是,针对以上供需和痛点,Flashbots 提出了 Flashbots Auction,在矿工和搜索者之间引入了拍卖和通信渠道。搜索者通过 Flashbots Auction 向矿工发送交易,并额外支付费用。
概括而言,供需关系产生了开放市场。
这是 PoW 中的情景。而当以太坊过渡到 PoS 之后,只需要质押 32 个 ETH 和满足简单的硬件要求就可以参与验证网络,意味着出块权的分布变广,即可以参与出块的人大大增多了。但是,对比矿工而言,这些 Validator 缺乏构建区块的能力。
供需关系的开放市场仍然存在,但产生了一些变化:以往矿工可以选择自己构建区块,或是把区块构建外包出去——Flashbots Relay 向矿工发送交易或区块,矿工可以选择性接收;而现在,对 Validator 来说,区块构建会产生额外的计算开销,并且他们大多没有足够的能力捕获 MEV,因此 Validator 需要向 Flashbots Relay 请求区块。