一文读懂以太坊 MEV 提取机制的现状、问题与改进
作者: Liam,AnT Capital
概要
TL; DR
- MEV 是指通过按照某特定顺序执行 N 笔交易,为设计这套顺序的主体带来的经济利益。凡涉及交易排序,MEV 的产生几乎不可避免,如何规范 MEV 提取对区块链网络的去中心化性和抗审查性是至关重要的。
- 以太坊合并后,MEV 的提取与分配由 Flashbots 提出的 MEV-Boost 体系所主导。MEV 利润流向了四类主体,MEV 搜寻者(Searcher)、区块建设者(Block Builder)、区块提议者(Block Proposer/Validator)和以太坊网络本身。
- 从 MEV 为整个系统带来的后果看,可以分为有益的、中性的和有害的三类。如何避免有害的 MEV 提取与如何分配有利的和中性的 MEV 利润是 MEV 赛道下项目要解决的核心问题。
- 现存的私有 RPC 解决方案是基于信任假设的,用户的交易仍可能被泄露、被抢跑,甚至还可能被审查,并且部分区块建设者对私有订单流的垄断地位会使得 MEV 提取变得更不透明、更中心化。
- MEV-Boost 体系的 MEV 利润分配方案中,并没有考虑用户的利益。用户作为创造 MEV 提取机会的角色,保障他们的合理利益不被侵犯只是最基本的,不应该只保障他们的交易不被抢跑,也应该将一部分 MEV 利润返还。
- 要解决 “抢跑” 问题,应该借助加密技术。基于 “加密-排序-解密-执行”,将用户的交易在本地加密,在不被任何人读取交易内容的情况下完成排序共识,再解密内容,最后按已共识的排序执行交易。
- 除了将 MEV 利润分配给 “发现 MEV 机会的搜寻者”、“建设最高价值区块的建设者”、“拥有产出新区块权利的提议者” 外,也应该分配给 “创造 MEV 机会的普通用户”。
正文
一、MEV 有哪些利益相关者?
* 什么是 MEV?
MEV 在不同语境下所指的内涵并不完全相同,为避免混淆,本文选择一个相对狭义但最精准的定义:MEV(Maximal Extractable Value,最大可提取价值)是指通过按照某特定顺序执行 N 笔交易,为设计这套顺序的主体带来的经济利益。MEV 有哪些利益相关者?以太坊合并后,MEV 的提取与分配由 Flashbots 提出的 MEV-Boost 体系所主导。根据 mevboost.pics 的统计,自 2022 年 11 月以来,约 90% 的区块都产自 MEV-Boost 体系。
在现行体系下,以太坊主网上 MEV 的利益相关者包括用户、钱包及 RPC、MEV 搜寻者(Searcher)、区块建设者(Block Builder)和区块提议者(Block Proposer/Validator)。在 MEV 价值链中,可以拆解为起源和上中下游四个部分:
起源:创造 MEV 机会,为 MEV 提取提供可编辑空间
- 用户:区块链的一般用户,出于非提取 MEV 目的而发起交易的一方。可以是终端用户、项目方、预言机和交易所等等。这些交易可以视为 MEV 提取的 “原材料”。
上游:完成签名,然后将交易从本地广播至网络中
- RPC 提供商:能够率先读取到用户交易的内容,并决定用户的交易被发送至何处
- 钱包:决定用户的默认 RPC
中游:在公开或隐私环境中拍卖 MEV 机会、确定 MEV 利润分配方式
- 内存池 Mempool:以太坊网络内公开透明的交易池,对任何人可见,存储着待打包上链的交易。
- 私有订单流:受信任的隐私交易池,只对特定的 MEV 搜寻者或区块建设者开放,同样存储着待打包上链的交易。创建隐私交易池的可以是 RPC 提供商、区块建设者或第三方项目。
- MEV 搜寻者:持续监听用户已广播但尚未被打包的交易,从中搜寻 MEV 机会,将用户的交易和能够提取 MEV 的交易按一定顺序打包成一组交易包(Bundle),并发送给区块建设者。
- 区块建设者:从其能够接收到的交易中选取一系列交易打包成一个新的区块,并发送给中继,交易来源包括 Mempool、MEV 搜寻者提交的 Bundles 和私有订单流。
- 中继:从其能够接收到的区块中选取支付最高费用的,并发送给区块提议者。
下游:提议新区块,使用户的交易和提取 MEV 交易被网络共识,获得最终性,实现 MEV 利润分配
- 区块提议者:从其能够接收到的区块中选取对自己最有利的,并将其提议上链。最有利一般体现为能够收取最高的费用,实践中也有出于其他目的而提议了费用相对低的区块。区块提议者(Block Propose)本身也是验证者(Validator),是根据区块链共识机制选出的。
二、MEV 如何被分配?
MEV-Boost 体系下,MEV 流向了四类主体,MEV 搜寻者、区块建设者、区块提议者和以太坊网络本身。
MEV 直接被 MEV 搜寻者捕获,并以 Gas Fee 形式流向了区块建设者、区块提议者和以太坊网络本身。
提取 MEV 的交易被执行为创建这些交易的 MEV 搜寻者带来了收入,这些收入的成本是 MEV 搜寻者支付的 Gas Fee;Gas Fee 的一部分根据 EIP-1559 协议而被燃烧,另外一部分以 Tip 形式流向了区块建设者;区块建设者将大部分的 Tip 以 MEV Rewards 的形式直接转账给了区块提议者(多数情况下区块建设者会保留一部分 Tip,但也有额外补贴区块提议者的情况)。
- MEV=特定顺序的交易被执行而产生的收益
- MEV=MEV 搜寻者利润+区块建设者利润+区块提议者利润+以太坊网络所捕获的价值
- MEV=(Bundles 收入-Gas 成本)+(Tip-付给区块提议者的费用)+(付给区块提议者的费用)+(EIP-1559 燃烧掉的 ETH)
对于 MEV 搜寻者,MEV 利润反映为 “MEV 搜寻者提交的交易包(Bundles)被执行而产生的收入减去交易包的 Gas 成本 “。对于区块建设者,MEV 利润反映为” 区块建设者提交的区块中的执行层收入减去支付给区块提议者的费用 “。对于区块提议者,MEV 利润反映为 “来自区块建设者支付的费用”。对于以太坊网络,MEV 利润反映为 “依据 EIP-1559 被燃烧掉的 ETH”。
三、MEV 的类型
从 MEV 的策略类型来看,可以分为 “跟跑” 策略(Back-running)和 “抢跑” 策略(Front-running);
从 MEV 为整个系统带来的后果看,可以分为有益的、中性的和有害的三类:
实操中,提取 MEV 利润的策略层出不穷,针对不同性质的 MEV,我们只举一种最常见的例子。
- 借贷协议中的清算交易:
这是一种基于 “跟跑” 策略提取 MEV 的交易。“跟跑” 策略需要紧跟着某笔交易才能够实现。例如,在超额抵押借贷协议中,当预言机喂价的变动使得某借款人的帐户达到可被清算的状态时,紧跟着预言机喂价变动后发起清算是有利可图的。
及时的清算能够降低坏账发生的概率,有利于维持整个借贷协议的稳定性,所以这类提取 MEV 的交易被认为是有益的。尽管本质上的利润来源是借款人的损失,但也是对借款人未能及时清偿债务的惩罚,且借款人在借出资金时也明确了这一潜在风险。
- 跨 DEX 的套利交易:
也是基于 “跟跑” 策略提取 MEV 的交易。当用户在 DEX 中完成一笔交易后,由于滑点的存在,可能使得不同 DEX 中相同 Token 出现价差。MEV 搜寻者可以通过一笔套利交易,在价格低的 DEX 买入,价格高的 DEX 卖出从而获利。
- 三明治攻击:
这是一种基于 “抢跑” 策略提取 MEV 的交易。当 MEV 搜寻者监听到用户在 DEX 的交易还未被打包确认时,抢在用户交易前插入一笔交易,使得用户的滑点变高、执行价格变差,挤在用户交易后插入另外一笔方向相反的交易,从用户的额外滑点损失中获利。
尽管三明治攻击本身也是套利交易,但它的利润来源是普通用户的损失,是在损害其他用户的前提下获得利润,被认为是有害的。
大多数基于 “跟跑” 策略所产生的 MEV 被认为是有益的或中性的,因为这些交易不会对在其之前的任何交易产生影响,不会损害其他用户的合理利益,并且有部分策略对 DeFi 系统的稳定性也是有益的;而大多数基于 “抢跑” 策略所产生的 MEV 被认为是有害的,因为这些交易的收益往往建立在将其他用户置于不利境地的基础上。
四、MEV 赛道的项目解决了什么问题?遗留了哪些问题?
涉及到交易排序就会有提取 MEV 的机会,MEV 几乎是无法避免的。这样的背景下,MEV 赛道下的项目致力于解决两个问题:1. 如何预防有害的 MEV?2. 如何公平地分配有益的和中性的 MEV?
现行解决方案的做法是:
关于 “预防” 问题:
- 项目方为用户提供私有 RPC,并承诺通过该 RPC 广播的交易不会被抢跑。比如 Flashbots Protect 和为 Sushi Guard 提供服务的 OpenMEV。
- 实践中,私有 RPC 会将用户的交易聚合为 “私有订单流” 广播给特定的 MEV 搜寻者和区块建设者,而享有 “私有订单流” 的条件是遵守放弃基于 “抢跑” 策略的 MEV 提取方式,否则会被踢出白名单。
关于 “分配”问题:
- MEV-Boost 创造了一个链下 MEV 机会拍卖市场,MEV 搜寻者、区块建设者和区块提议者各司其职,共同瓜分 MEV 利润。
- MEV 搜寻者比拼硬件和算法,在有限的时间内找到能够提取 MEV 的机会,并且需要让出足够多的利润(支付最高的 Gas Fee);
- 区块建设者比拼订单流资源,使得其构建的区块能够包含更高的执行层奖励,才越有可能被区块提议者接受;
- 区块提议者拥有提议新区块的权利,能够决定哪些交易被打包上链,但它不一定有强如 MEV 搜寻者的提取 MEV 能力,也不一定有如区块建设者丰富的订单流资源。与其只通过内存池自身构建区块,不如接入 MEV-Boost,“听从” 区块建设者的规划,获得更高的执行层奖励。
遗留的问题是:
- 私有 RPC 的方案是基于信任假设的,用户的交易仍可能被泄露、被抢跑,甚至还可能被审查。
- 私有 RPC 带来了私有订单流,而部分区块建设者对私有订单流的垄断地位会使得 MEV 提取变得更不透明、更中心化。
- 在 MEV-Boost 的分配方案中,用户的利益没有得到完全照顾,用户没有从 MEV 提取中获得任何好处。
五、改进的方向何在?
- 要解决 “抢跑” 问题,应该借助加密技术。基于 “加密-排序-解密-执行”,将用户的交易在本地加密,在不被任何人读取交易内容的情况下完成排序共识,再解密内容,最后按已共识的排序执行交易。这种方案既破除了信任假设,也不再需要私有订单流。
- 实现更公平的分配,应该返还用户应得的 MEV 利润。用户作为创造 MEV 提取机会的角色,保障他们的合理利益不被侵犯只是最基本的,不应该只保障他们的交易不被抢跑,也应该将一部分 MEV 利润返还。