在智能合约区块链网络中,矿工(或验证者、排序者等)能够通过任意包含、排除或重新排序他们生产区块中的交易来获利,这种利润的衡量标准就是 MEV(Maximal Extractable Value,最大可提取价值)。最初它被称为“矿工可提取价值”(Miner Extractable Value),但随着应用范围扩展至权益证明(PoS)等其他网络类型,更广泛的“最大可提取价值”逐渐成为流行术语。
简单来说,MEV 是一种动态机制,允许矿工通过决定区块链网络中待处理交易的顺序来最大化自身利润,包括以用户为代价,任意重新排序、包含或排除区块中的待处理交易。
MEV 的起源与发展
MEV 的概念最早可追溯至 2014 年,当时一位 Reddit 用户就以太坊网络上所有交易公开的特性提出了“矿工抢先交易”的问题。2019 年,一支研究团队通过发布题为《Flash Boys 2.0》的论文正式提出了“矿工可提取价值”这一术语,系统性地揭示了该问题。
2020 年,Web3 投资公司 Paradigm 的研究负责人 Dan Robinson 发表了文章《Ethereum is a Dark Forest》,使 MEV 及其相关问题获得了广泛关注。文中指出,抢先交易机器人等问题会激励矿工为了自身利益重新排序和提交内存池中的交易。
自从 2020 年以来,以太坊网络上已被提取的 MEV 总值超过 6.63 亿美元,这不仅表明其并非小问题,更是一个大规模发生的严重现象,值得所有以太坊用户警惕。
MEV 的主要提取形式与运作机制
虽然 MEV 让矿工和验证者能够从重新排序交易中获利,但一大部分 MEV 实际上是由被称为“搜索者”(Searchers)的自动网络参与者执行的。搜索者利用复杂算法检测可盈利的 MEV 机会,并使用机器人自动向网络提交有利可图的交易。由于搜索者拥有“安全”的利润机会,他们能够支付高额 Gas 费用,从而激励矿工和验证者接受他们提议的交易顺序。
以下是几种常见的 MEV 提取形式:
Gas 优化(Gas Golfing)
Gas 优化是指以最小化所需 Gas 量的方式优化智能合约的现有功能。通过编程交易以利用合约设计,尽可能减少 Gas 使用量。
Gas 优化为搜索者提供了竞争优势,因为他们可以在总 Gas 费用保持不变的情况下(因为 Gas 费用 = Gas 价格 × Gas 使用量),设置更高的 Gas 价格。常用技巧包括:
- 尽可能在交易代码中节省数据空间。
- 仅在真正需要时存储数据。
- 监控函数访问或更改存储的次数。
其他技巧还包括使用以长串零开头的地址(占用更少存储空间),以及在合约中保留少量 ERC-20 代币余额以重复使用(初始化存储槽比更新存储槽消耗更多 Gas)。
广义抢先交易(Generalized Front-Running)
与 Gas 优化不同,抢先交易不涉及优化智能合约,而是监视未确认或待处理的交易,寻找有利可图的交易,然后通过支付更高 Gas 费用抢先提交原始交易。
通过先执行盈利交易,抢先交易者以原始诚实交易者为代价确保利润。使用特定算法和参数识别交易的机器人被称为广义抢先交易者。
例如,假设交易者发现 Uniswap 和 Sushiswap 之间存在套利机会。一旦交易者发起交易,它将在内存池中等待矿工执行。然而,抢先交易机器人会检测到该交易,复制它,添加更高 Gas 费用,并抢先执行,从而窃取套利机会。
后跑交易(Back-Running)
后跑交易类似于抢先交易,涉及监视内存池,在目标交易完成后立即执行交易。MEV 搜索者使用后跑机器人监听大额交易,这些交易通常会导致 AMM 资金池失衡和严重价格滑点。
然后,后跑机器人在同一资金池执行反向交易,以最大化其所有者的利润。换句话说,后跑交易利用原始交易引起的价格差异获利。
后跑机器人还监视新代币对的上市情况,并立即购买大量代币以吸纳初始流动性,随后推高代币价格,制造 FOMO(错失恐惧症)情绪,并在价格更高时出售代币。
三明治攻击(Sandwich Attack)
三明治攻击结合了抢先交易和后跑交易策略,在采用 AMM 模式的去中心化交易所(如 Uniswap)中尤为常见。
例如,假设受害者想在 Uniswap 上将大量 ETH 兑换为冷门山寨币。MEV 搜索者在内存池中看到此交易后,可以抢先执行相同交易,导致价格滑点并提高山寨币价格,使受害者支付比预期高得多的费用。然后,搜索者再将其山寨币换回 ETH,以后跑交易获利。
时间盗贼攻击(Time Bandit Attacks)
时间盗贼攻击涉及重新挖掘区块以最大化利润,可能是最令人担忧的攻击类型,因为它们可能破坏网络共识和信任。
当区块奖励与 MEV 相比足够小时,可能会发生时间盗贼攻击。这会激励矿工破坏共识以获取最大利润。例如,如果矿工在 #B7 区块发现价值 1000 美元的 MEV 机会,而最高区块 #B10 的奖励仅为 100 美元,该矿工可能会重新挖掘 #B7 及后续区块以获取 MEV 奖励。
叔块攻击(Uncle Attacks)
叔块攻击可以绕过捆绑交易(一种常见的防御策略)并执行 MEV。当此类交易被挖掘到叔块(因同时挖掘而被链丢弃的区块)时,它们对所有人可见,攻击者可以选择交易进行抢先或后跑交易。
MEV 的影响:好处、坏处与隐患
令人惊讶的是,关于 MEV 及其在区块链生态系统中的作用存在多种论点。
MEV 的积极面
支持者认为,MEV 确保了 DeFi 项目(如借贷协议)的有用性,使其能够快速平稳地进行清算过程。MEV 提取者是理性行为者,寻找并修复 DeFi 协议的经济低效问题,使其更加稳健。
研究组织 Flashbots 旨在通过创建链下 MEV 拍卖市场来民主化 MEV 访问,减少内存池竞价战、失败交易阻塞区块链以及用户的总 Gas 成本。支持者认为,提供抢先交易即服务(FaaS)可以弥补矿工因 EIP-1559 费用燃烧更新而损失的收入,间接通过激励矿工以更高算力竞争 MEV 来增加以太坊的安全性。
MEV 的负面影响
另一方面,MEV 显然会导致用户体验更差,包括交易费用更高和收入损失。
在应用层,抢先交易和三明治攻击导致用户因价格滑点增加和套利机会丧失而损失数百万美元。在协议层,如果 MEV 奖励大于区块奖励,可能会激励矿工重新挖掘区块以获取 MEV,破坏网络共识。
允许矿工为了利润重新组织和排序交易,可能被视为打破了区块链作为安全、不可变和无许可技术的前提。这也使矿工在影响交易和余额方面扮演主动角色,而不是竞争不同利益的中立方。
MEV 的潜在隐患
有人认为,MEV 在协议层面加剧了网络本身的问题。当矿工认为利用其采矿特权自行进行 MEV 值得时,可能会对网络的共识机制产生深远影响。
如何减轻 MEV 的影响?现有解决方案一览
整个加密生态系统正在积极讨论和制定解决方案,以减轻或最小化 MEV 的影响。解决方案主要来自两个阵营:认为 MEV 不可避免并应民主化访问的一方,以及试图防止它的一方。
MEV 民主化、Flashbots 及其他
在“支持”阵营中,Flashbots 等组织旨在通过密封投标区块空间拍卖机制民主化 MEV 提取。该拍卖机制创建一个并行私人中继,减少内存池竞价战、失败交易阻塞区块链以及用户的总 Gas 成本。
Optimism 发起了一项运动,提议 MEV 拍卖(MEVA)以最小化 MEV 对网络流量的影响。通过 MEVA,创建一个拍卖,获胜者有权重新排序提交的交易并插入自己的交易,只要不将任何特定交易延迟超过 N 个区块。
反对 MEV 的解决方案
另一方面,认为 MEV 有害并应最小化的一方也提出了一些解决方案。
以太坊第二层解决方案 Arbitrum 公开反对 MEV 和 FaaS。为了减轻 MEV,Arbitrum 提出了一种解决方案,通过在第二层链上不设排序器来避免交易重新排序。没有排序器,排序完全由收件箱合约决定,MEV 就无法介入。
知名预言机网络 Chainlink 也构建了一种称为公平排序服务(FSS)的解决方案,以避免交易重新排序。FSS 的理念是让预言机网络对发送到特定合约的交易进行排序,包括用户交易和预言机报告。通过 FSS,预言机节点摄取交易并就其排序达成共识,而不是允许单个领导者决定它。
另一种方法是允许用户直接将私有交易发送到矿池,绕过公共内存池。这消除了内存池中的攻击面(交易是公开的,可能被 MEV 机器人监视)。
目前 MEV 问题相当严重,需要加以解决或至少最小化。尽管关于 MEV 的好坏存在冲突,但双方都在积极研究各种解决方案。
常见问题
什么是 MEV?
MEV(最大可提取价值)是指矿工或验证者通过在其产生的区块中任意包含、排除或重新排序交易所能获得的利润。它最初称为“矿工可提取价值”,但现在更广泛地适用于各种区块链网络。
MEV 如何影响普通用户?
MEV 可能导致用户支付更高的交易费用,遭遇价格滑点,甚至失去套利机会。抢先交易和三明治攻击等手法使用户在不知情的情况下蒙受损失。
有哪些方法可以防止 MEV 攻击?
用户可以使用私有交易服务(如 bloXroute)绕过公共内存池,或选择具有内置 MEV 保护机制的协议(如 Arbitrum 和 Chainlink 的 FSS)。此外,Gas 优化技巧也有助于减少被攻击的风险。
MEV 是否完全有害?
并非所有人认为 MEV 完全有害。支持者认为它能够提高市场效率,并通过民主化工具(如 Flashbots)使提取过程更公平。然而,其负面影响仍需警惕和 mitigation(减轻)。
以太坊合并后 MEV 会消失吗?
不会。随着以太坊转向权益证明(PoS),MEV 仍然存在,但提取方式可能发生变化。验证者将取代矿工成为主要提取者,因此 MEV 的研究和解决方案仍需持续关注。
如何实时监控 MEV?
目前已有一些工具和仪表板(如 Flashbots 的 MEV-Explore)允许用户监控网络上的 MEV 活动。这些工具可以帮助研究人员和开发人员更好地理解 MEV 的影响并制定相应对策。