作者:Tudd Cai
提到MEV(Maximal extractable value) ,大多数用户会对它深恶痛绝。当我们在Uniswap上交易MeMe币时,会设置较高的滑点确保能够在剧烈的波动中买入卖出,但这却给了MEV机器人抢先交易的机会。例如我们在交易前段时间很火的MeMe币PePe的时候,我们用ETH来购买PePe,当搜索者(Searcher)注意到该笔交易时,他们会采用更高的gas来抢先购买PePe,使得PePe价格上涨,让我们买到比理论上数量更少的PePe,随后搜索者卖出获利,这个过程便是三明治攻击(Sandwich Attack)。作为一般用户,应对三明治攻击可以设置较低的滑点,比如0.1%,这会让抢跑机器人缺少可盈利的空间。可是这样滑点过低会导致大额交易容易失败,且仍需要支付手续费。用户还可以选择提高 gas 费用,这会增加机器人的攻击成本。缺点是这同样也增加了自己的交易成本。
可以看出,面对MEV机器人,用户很容易成为相对弱势的一方。然而对于MEV机器人而言,并不意味着一本万利,随意收割用户。由于默认情况下所有的交易都在以太坊公开的内存池中,每笔交易都会被监控,MEV中的搜索者会检查是否有可能利用这些交易。当多个搜索者竞争同一笔交易的时候,MEV中的构建者(Builder)通过priority fee抢占了下一个区块的空间, 导致正常的交易被堵塞, 上链成本变高。所有交易都会上链,但是只有一个搜索者能成功,这就导致了其他没有成功的搜索者蒙受不必要的损失。为了保护用户,有致力于优化MEV问题的项目方为用户提供私有RPC,并承诺通过该RPC广播的交易不会被抢跑,比如Flashbot Protect RPC和OpenMEV RPC ( Sushiswap的抗MEV服务商)。以前者为例,Flashbots Protect是一种RPC工具,是用来抵抗试图抢先用户交易获取利润的机器人,对比其他节点提供商, 主要是将交易发送到私有化的内存池而来避免交易上链前被搜索者看到,有效地减少了三明治攻击的情况。
当搜索者之间的竞争加剧且用户也被保护的时候,搜索者便产生了向用户合作的请求。那用户为什么要同意和搜索者的合作呢?因为公共内存池中的MEV能避免被搜索者捕捉,但私人交易池中的MEV仍容易被捕捉,即使用户采用了FlashbotsProtect RPC,也只能防止公共内存池中的搜索者捕捉其潜在的MEV,Flashbots Auction中的搜索者仍然有机会针对它的交易提取MEV。Flashbots Auction 提供了一个私人交易池 + 一个密封的区块空间拍卖机制,允许区块验证者将寻找最佳区块构建的工作外包给搜索者。在这个私人交易池中,搜索者可以私下交流。通过Flashbots Auction,搜索者不再需要通过 Gas War 的方式来确保自己的交易被优先打包,也无需支付失败交易的费用。
用户想既然无法完全规避被提取MEV,不如自己也从搜索者那获取一些返利。于是,一个共赢的方案出现了,它的名字叫MEV-Share。MEV-Share是由Flashbots在2023年2月提出的一种协议,实现了用户的可编程隐私(programmable privacy):用户有选择地与搜索者共享有关其交易的数据。这让用户可以决定他们的交易通过什么方式,在什么时候以及由谁执行。默认情况下,用户只共享交易的哈希和支持的流动性池地址。搜索者通过搜索可编程的私有订单流(私有订单流是指提交给Flashbots拍卖系统的非公开可见的交易活动和订单信息)并在订单流拍卖中出价,以获得执行用户私有订单的权利。用户这种有选择地披露交易数据的方式可以帮助搜索者更好地出价,优化了搜索者之间的竞争,用户也会收到构建者返还的费用。那么,谁来调解用户与搜索者之间的数据交换呢?MEV-Share引入了一个名为Matchmaker(媒介)的新参与者来调节这种交换。
Matchmaker可以对MEV-Share供应链过程中的三个环节进行调节。它可以接收用户的交易并有选择地与搜索者共享这些交易的数据。它还可以将用户的私人交易插入搜索者未构建完成的捆绑包(Bundle)中,从而创建完整的捆绑包。捆绑包是在Flashbots Auction中引入的角色,捆绑包由多笔要执行的交易组成。它们可以由搜索者发给构建者,构建者将收到的捆绑包中挑选出最有利可图的打包成完整区块再发给中继器(Relay),最后由中继器发送给验证者(Validator)。在MEV-Share中,Matchmaker可以将完整的捆绑包连同构建者需要遵守的有效性条款(例如,将费用返还给用户)一起发送给构建者,构建者必须遵守有效性条款才能参与到MEV-Share供应链当中来。我们知道,MEV-Share是用户与搜索者之间的合作,为什么构建者也会参与进来呢?这里便需要介绍在MEV过程中的各种角色分工。
在以太坊转为权益证明的当下,验证者可以自行为内存池中的交易排序并将其打包,或者也可以选择打包MEV-Boost推送过来的经过构建者排序过的,拥有更高MEV收入的区块。通过MEV-Boost,验证者的收入会大幅增加,所以绝大部分验证者会选择接入MEV-Boost,而不是自己排序。实际上,根据mevboost.pics的显示,目前接入MEV-Boost的验证者比例已经高达90.7%。
在MEV-Boost供应链中,有着五种不同分工的角色:用户、搜索者、构建者、中继器、验证者;他们之间的关系可以参考下图。用户是订单流的发起者,当用户在区块链上提交一笔交易时,该笔交易一般会先进入内存池的交易池中。搜索者(套利和清算机器人、DeFi交易员、以太坊Dapps)开始检索内存池,寻找可提取的价值,然后将交易捆绑在一起提供给构建者。构建者(一般是专业的机构),负责将来自搜索者的交易,以及来自公共内存池(public mempool)和私有交易订单流(private transaction order flow)的交易打包成区块。中继器负责连接构建者和验证器,验证构建者提交区块的有效性和出价,并将有效的最高出价提交给验证者。验证者便是以太坊转为权益证明后的矿工,验证者也称提议者,负责向网络提议区块,并将区块添加到链中。目前验证者的竞争格局稳定,Lido占据市场份额的第一。验证者既可以获得共识奖励(区块奖励),也可以获得执行的奖励(MEV+Tips)。
可以看出,构建者是MEV供应链中的重要组成。虽然MEV-Share调节的是用户与搜索者之间的关系,可假如构建者行为不当,对订单流产生负面影响,用户几乎没有追索的可能。因此,构建一套与可信赖的构建者共享订单流的方法是很有必要的。Flashbots正在构建这样的方法,为了从Matchmaker接收订单流,构建者必须遵守公平市场原则。在这个原则中,构建者需要确保以市场中立的方式行事,并且不会利用他们的特权地位来操纵拍卖,从而损害用户的利益。因此,MEV-Share还有着削减订单流中心化程度的作用。
那么,用户,搜索者和构建者怎么使用MEV-Share呢?MEV-Share协议包含在Flashbots Protect中。用户可以通过Flashbots Protect连接到Flashbots Matchmaker。用户还可以配置他们的 RPC 请求来选择是否与注册过的区块构建者共享他们的订单流。搜索者可以订阅Flashbots Matchmaker来搜索可编程的私有订单流,而构建者可以通过MEV-Share接收订单流。
如果用一句话来形容MEV-Share的作用,那该怎么形容呢?我的理解是通过可编程的交易数据共享来实现MEV供应链的协作和优化。我们知道,MEV-Boost致力于优化构建者和验证者之间的合作,而MEV-Share是为了用户和搜索者做同样的事情。在不远的未来,也许还会实现搜索者和构建者之间的合作方案。
不妨进一步思考,为什么我们需要MEV供应链的成员们共享与协作?为什么Flashbots致力于提出这些切入点小却意义非凡的解决方案?我认为追根究底这是一种去中心化的价值主张。众所周知,MEV市场是专业性强、竞争激烈的黑暗森林,而Flashbots更愿意鼓励社区合作,他们的理想是打造一个无需许可、透明和公平的MEV生态系统。
1)对于区块链,他们希望实现最大程度的去中心化排序。对于验证者,他们希望实现区块空间的最大收入。
2)对于搜索者和构建者,他们希望实现对用户和搜索者交易的开放性访问,复杂个性偏好的表达和跨链协调。
3)对于用户,他们希望实现最好的订单流执行路径和最低的费用。“偏好、隐私、协调”等关键词本就是去中心化的具体表达。
如果说MEV-Share致力于在MEV供应链中起始端的研究,另一个叫做MEV-Burn的提案则致力于MEV供应链末端的研究。在现行的MEV-Boost 体系下,MEV被搜索者捕获,并以gas fee的形式流向了区块构建者,验证者和以太坊网络本身。搜索者支付的gas fee一部分根据EIP-1559协议被燃烧,另外一部分以tip的形式流向了区块构建者,构建者支付费用给验证者来向网络提议区块。对于构建者而言,MEV的利润反映为“交易费用(Gas)+ 搜索者支付手续费 - 销毁的 Gas 费用 - 构建者给验证者的费用”。对于验证者而言,MEV利润反映为来自构建者支付的费用,对于以太坊网络,MEV的利润反映为根据EIP-1559被燃烧掉的ETH。
EIP-1559是为了解决以太坊交易拥堵导致效率低下的问题,它能够动态地调整Gas费的上限以应对短时的交易高峰,避免交易量过多导致的网络拥堵,改变了付费结构和付费流向,从而保证区块的使用率。而在MEV的流程中,区块网络同样存在着类似的拥堵问题,称之为竞争费用。套利者愿意为更快的执行交易支付大量的gas费,由此产生的竞争费用,正是MEV-Burn燃烧的目标。
在现行的体系下,验证者可以通过MEV贿选来垄断slot(在以太坊 PoS 中,每12秒为一个slot)实现盈利目的,验证者完全可以控制什么交易在哪个slot上发生。即使MEV供应链的其它成员做了很多事情,验证者总是享受相比较之下更多的收益。当控制越多的验证者就能获得越多的收益时,这就会带来中心化的问题了,即单一验证者具有对提议区块的垄断权利。为了让验证者们竞争起来,都在为提出区块的奖励而奋斗,MEV-Burn的提案出现了。该提案的核心思想是在协议内拍卖共识层的“出块权”。一旦选出验证者中的获胜者,他们提出的执行区块将被燃烧至少与他们的出价一样多的竞争费用。这个想法会促使验证者的最高出价接近区块中的最大可提取价值,因而能够销毁部分MEV。
那么为什么要燃烧MEV呢,这样做有什么好处呢?首先是MEV的燃烧可以减少MEV的尖峰效应。如下图所示,平均 MEV 支付(图片仅描述了 Flashbots 通过 MEV Boost 创建的区块)约为每个区块 0.05 ETH。但有时候,它可能会猛烈地飙升至平均每个区块 1 ETH。在这些市场动荡时期,曾有以太坊区块被幸运的验证者从单个区块中榨取了超过 100 个 ETH!
而MEV的燃烧可以使尖峰变得平滑,这样可以增强共识的稳定性。尖峰平滑减少了个体提议者(individual proposers)通过短链重组,P2P攻击等方式来窃取MEV的动机。极端的MEV峰值可能会给以太坊带来系统性风险,MEV-Burn能够增强网络的安全性。
另一方面,MEV-Burn能够产生与EIP-1559相同的经济效益。在以太坊权益证明的机制下,验证者的奖励主要体现在基础奖励(base reward)上,基础奖励代表了在每个时段的最佳条件下每个验证者的平均奖励。这是根据验证者的有效余额(最大为32)以及活跃验证者的总数计算的。
而对于ETH的发行量而言,发行量与验证者数量的平方根成正比。MEV的燃烧减少了验证者的收入,从而减少了ETH质押的总奖励,这也会导致ETH质押量的下降。随着ETH质押量的减少,ETH的总发行量也会减少。由于信标链被设计为仅通过发行来确保安全,因此 EIP-1559和MEV燃烧可以减少对经济安全的过度投入并提高经济效率,验证者数量变少可以减轻信标节点的压力。MEV的燃烧也可以达到为ETH增加稀缺性的效果。假如MEV-Burn能够成功实施,ETH供应量的减少速度将加快约 2.5倍。
另一个有趣的点是纳税——在传统商业中,一家公司想把利润分给股东,往往有两个选择,第一个选择是向股东支付股息,第二种是像苹果公司一样回购股票。而回购往往作为资本利得缴纳资本利得税( Capital Gains Tax),而股息缴纳所得税(Income Tax),MEV燃烧的模式便很类似于回购。对于大多数司法辖区而言,所得税明显高于资本利得税。在英国,所得税是50%,资本利得税是20%。EIP-1559 和 MEV燃烧可以将用户应当缴纳的所得税转换为资本利得税,显著提高某些司法管辖区对于加密货币的税收效率。EIP-1559已经阻止了约100万ETH的税收抛售压力,MEV燃烧同样可以阻止数百万ETH的抛售压力。
一系列关于 MEV的解决方案,都是为了致力于建立一个公平、透明、安全的交易环境。在MEV再分配的路径探索中,我们看到了用户与搜索者的合作,验证者之间更为激烈的竞争,可MEV还是面临着一些中心化,分配不够公平的挑战。在研究的过程中,Flashbots等团体表达了对保持去中心化的承诺,对MEV涉及的每个用户和每个领域偏好的尊重,并期待更多的人加入进来研究和讨论。展望未来,我们期待着更加深入的研究和创新,不妨向着更多的权力下放前进!