本文要点:
什么是 MEV
MEV 的常见类型与生态现状
MEV 的问题与挑战
什么是 MEV
所谓 MEV,全称是 Miner Extractable Value 或 Maximal Extractable Value,指的是矿工从挖矿权中所能攫取的最大价值。
具体来说,矿工一般能获得网络的挖矿奖励,以及用户的交易佣金,而 MEV 更侧重于这两者之外的隐性价值。发展到后来,因为在 PoS 语境下矿工一词已不够贴切(后面我们统称为验证者),而且攫取这个价值的不仅仅是矿工,所以严格来讲,MEV 的全称就不能叫 Miner Extractable Value,只能叫 Maximal Extractable Value 了。
可能不少人最早接触 MEV,都是从 2020 下半年的《Ethereum is a Dark Forest》或《Escaping the Dark Forest》开始的。如果说早期,MEV 的吸睛之处还只是偶现的诡谲交易,那么现在,MEV 已经完全日常化、专业化了。
2022 年,MEV 交易所贡献的交易额就占了 DEX 交易总量的将近一半。
截至目前,绝大多数以太坊验证者都接入了 MEV 生态,而 MEV 为以太坊验证者增收了 50% — 70%。
罗列这些数据,只是为了说明,MEV 作为一个很多人此前不知道、瞧不上或者愤怒的现象,现在都必须得正视和重视了。
所以 MEV 到底是什么?验证者除了质押奖励(Staker Reward)和交易费(Transaction Fee),难道还有什么以太坊协议 Specs 都不曾提及的收入么?别说,还真有。
MEV 的常见类型
一般大家讲 MEV 很容易提到“Sandwich”,实际上它只是 MEV 五种主要类型之一。MEV 的五大类包括:
抢跑型(Front-running)
跟跑型(Back-running)
前后夹击型(Sandwich)
套利型(Arbitrage)
放炮清算型(Liquidation)
看着很玄乎吧,实际上非常好理解。
抢跑型指的是,验证者看到某个用户提交的交易非常有利可图,于是自己下场,抢在他之前,抄他作业提交,等于是偷看聪明同桌答案然后举手抢答了。当然,这种做法显然会极大地败坏自己的名声,所以验证者也可以着眼长远,跟大家达成协议,永不抢跑,但大家得分他一杯羹。
跟跑型刚好相反,指的是一个巨鲸下了一个大的买单,这个买单将在很大程度上推高其买入资产的市价,于是验证者紧贴在这个买单后面,卖出自己的这个资产。这样大概率捞一个确定性收益,而且不影响这个巨鲸,即对用户没啥损失,属于良性的 MEV。
前后夹击型是抢跑型、跟跑型的合成体,即在巨鲸的买单前买入,在巨鲸的买单后卖出,这样稳赚不赔,还不用承担持有资产的价格波动风险。由于包含抢跑操作,前后夹击型和抢跑型一样,属于不良的 MEV。
套利型从字面上理解就够了,做的就是搬运的活儿,一个市场上低买,然后在另一个高卖。验证者比普通玩家更近水楼台,预期帮人家拎箱,不如自己下场干。套利型属于良性 MEV,因为它有助于市场进行价格发现。
放炮清算型指的是质押借贷平台(如 Maker)上,质押品价格暴跌,资不抵债,此时需要清算,但智能合约上的清算不能自动触发,需要外界触发(现在是 EOA),触发者会从被清算人的罚金和实惠的拍卖价格中获利。放炮清算型也算是良性 MEV。
从 REV(Realised Extractable Value,即真正攫取了的 MEV)规模上看,套利型最多,其次是前后夹击型,再之后是放炮清算型。
上面的解释其实做了一些简化。
事实上,不仅买单,卖单也有 MEV 机会;不仅巨鲸,普通人的单子也可以攫取 MEV。如今,只要你在 Uniswap 上提单,设置了滑点,那么很有可能最终你会按照最差的情况成交。
而且,除了这五大类之外,还有更变态的玩法,比如区块重构(Reorg,或 Time-bandit Attack),指的是验证者看上一个区块有利可图,于是“大嗓门”广播一个包含自己交易的“抢答”区块,让大家有一定概率误认为他先回答。当然,这种骚操作一般见于多个 Proposer 同时提块的链,以太坊一个 Slot 只有一个 Proposer,恰好很大程度上规避了这个问题(恶意的 Proposer 仍可能 DoS 前一个 Proposer 来达到类似目的)。
此外,上面我们还只是聚焦一个链,实际不管 L1 还是 L2,不管是一条链还是跨链,都可能存在 MEV。
总之,万物皆可 MEV,这就是我们目前所处的冰冷现实。
MEV 的生态现状
Christensen 的颠覆式创新理论谈到,市场早期,整合者(Integrator)能针对最大痛点提供更好的体验,抢占先机;而到后来,大家都一哄而入,产品就往往再次模块化,大家比拼的就是各自赛道内的效率。
MEV 也是一样,早期 MEV 是验证者亲自下场,什么都干;而到后来,大家看有利可图纷至沓来分一杯羹后,MEV 的分工就出现了。
我们把一个有 MEV 的用户交易,连同攫取其 MEV 的交易,合在一起叫做一个 Bundle;一个区块中可以装入很多交易,这也就意味着可以纳入很多个 Bundle。按照这个思路,我们就有了 MEV 供应链中最核心的 3 类玩家:
Searcher:负责从公开或私有的 mempool 中,寻找有 MEV 的用户交易,并构建 Bundle。
Builder:负责将 Bundle 塞进区块里(想想运筹学),让区块的验证者收益最大(可能也会综合考虑法律法规等其他因素)。
Proposer:前身就是验证者,只不过自己不构建区块了,只是提块,所以这里退化为 Proposer。
这 3 类玩家前后之间也需要有信息的整合者(Aggregator),于是我们又有了 2 类角色:
Matchmaker:负责在 Searcher 和 Builder 之间牵线搭桥,向 Builder 提供最有利可图的 Bundle,同时让 Searcher 满意。
Relay:负责在 Builder 和 Proposer 之间牵线搭桥,向 Proposer 提供最有利可图的区块。
Builder 和 Proposer 可以“脚踏多条船”,分别和多个 Matchmaker、Relay 连接,以在更大范围内寻求利润最大化。
从市场竞争和利润分配上看,据不完全统计(衔接角色没统计在内),Searcher 和 Proposer 基本上是吃肉喝汤对半开,到 Builder 这儿汤都不剩。这从侧面说明,真正有护城河的还是构建 MEV Bundle 的 Searcher,以及“躺着收租”的 Proposer。
但可别忘了,用户是最惨的,毛都捞不着,还被人撩一刀。这也是 MEV 臭名在外的原因。
MEV 的问题与挑战
关于 MEV 的大多数讨论,多是围绕以太坊展开,一是因为以太坊在市场规模上的“太子”地位,二是因为像比特币这种链本身不支持复杂的脚本逻辑和应用,而且本身基于用完即扔的 UTXO 而非账户模型,没有什么 MEV 可攫取。下面我们也将以以太坊为主角,讨论 MEV。
MEV 的问题与挑战是多方面的,包括:
用户
MEV 供应链中的弱小的玩家
整个 MEV 生态
整个区块链的稳定性和安全性
用户
用户自然不必多言,首当其冲的就是他们。他们在“黑暗森林”手无寸铁,任人宰割。
在 MEV 的类型中,损害用户的主要是抢跑型和前后夹击型,它们让用户往往以最糟糕的条件达成交易。具体方式前面已有提及,这里不再赘言;这里想额外讨论的是,MEV 到底是不是像用户感知的那样不堪。
客观上,用户提交的交易,最终达成,并且达成的条件也是用户允许的条件,否则交易本身会 Revert。MEV 攫取,并没有向非常无赖地向用户强制征收“保护费”,最多只是“揩油”,讨厌但不违法。怎么优化呢?
用户面临的 MEV 问题,说到底,有 3 种优化思路。
一种是尽可能消除 MEV 外部性,在机制设计上内化 MEV,让大家没有 MEV 可攫取。
比如在协议层,我们可以确定性地规定交易排序方式(类似 Optimism 的做法),这样如果有人操纵排序,攫取 MEV,就会被惩罚。或者,在应用层(可以是 AMM 或其他),我们可以规定,每个区块中出现的第一个该应用交易大概率是 MEV 攫取交易,对其征收额外的费用,补偿给应用用户;这也是一种机制设计思路,但细节问题很多,目前还没看到很完整的解法。
另一种是 MEV 该攫取还是攫取,但引入竞争,并优化 MEV 分配公平性。
比如我们可以扭转用户的弱势局面,毕竟如果用户不提交交易,那整个 MEV 供应链里谁都没得赚,所以不该用户才是大爷吗?让用户通过拍卖自己的交易,见到回头钱,MEV-Share 就是遵循这种思路的一个方案。
最后一种是不怎么改变现状,但提升透明度。
提升透明度的意思是,让你在提交交易前知道,你的交易可能会以最差的情况成交。如果你想不被“揩油”,你可以交费保护自己,或者将交易提交给一些菩萨心肠的服务(如 MEV-Protect),由这些服务确保你的交易不被抢跑。
MEV 供应链中的弱小的玩家
弱小的玩家则会受到二阶的负面影响。虽然他们作为掠食者,处境比用户好太多;但是面对“森林巨人们”,他们的生存空间依然堪忧。
原因是,在 MEV 供应链中,有鲜明的集中化倾向,强者恒强。拥有更大质押品的验证者,拿到提块权的概率越大,也越容易顺带在 MEV 捞一笔;其他角色也类似,一个玩家越可靠,或者提供的条件越优惠,就越能吸引其他角色与他建立连接,长此以往统一角色下的弱小玩家就会被逐出市场。
这种适者生存在效率层面并无不妥,但是会严重损害去中心化,带来信任风险。举个例子,如果市场上只剩下几家大的 Builder,那他们就能轻易地审查交易(现在至少有三成的 MEV 区块存在审查),或者在场外进行排他的利益输送,不按明面上的规则来打包。
一种解决思路是小玩家抱团取暖,对抗中心化大玩家。
MEV-Smoothing 就是遵循这个思路的一个方案。小验证者可以聚集在一起,扩大提块概率,然后平均分配 MEV。这种做法能平滑收益,和矿池是一个逻辑。不过,这个方案要落地,需要协议层的改变,否则小验证者之间的分成也会引入新的信任假设;而且提块的验证者可能不按集体利益最优的方式打包区块,因为他可能接收场外利益输送,这样一来他的利益和集体利益就不一致了,只有协议层的改变才好实现这种情况下的追责和惩罚(Slashing)。
整个 MEV 生态
不仅是弱小玩家面临问题,其他玩家也同样面临风险。
跟《三体》得黑暗森林假说一样,由于不同玩家看不到其他玩家的真实想法,互相之间是没法完全信任的。
可能一个玩家之前很老实,但是看到一个高价值 MEV 机会,就会自己偷走,不给上游分成,出现“黑吃黑”的局面。或者上游玩家(Builder、Relayer)给下游玩家(Proposer)不合法的区块,造成后者被协议惩罚;同样,Searcher 也有可能给 Builder 不合法的交易,损害下游玩家(Builder 可能为了降低延时而不验证交易合法性)。
解决这个问题,有 2 种思路。
一是 Put skin in the game,说人话就是交押金,谁作恶就没收谁的押金。这个押金可以是链下的(信誉体系也算是一种),也可以是链上的。举个例子,以太坊的质押其实就是链上的押金,如果 Relay 担心 Proposer 偷走自己的区块,他可以让 Proposer 先签名区块头,Commit 到 Beacon Chain 上,之后再给 Proposer Reveal 对应的区块 Payload,这样如果 Proposer 想自己攫取整个收益,另提个区块,他就会被以太坊惩罚。
另一种靠加密,以及零知识证明 — — 不信任,只验证。
整个区块链的稳定性和安全性
MEV 的问题其实对不搞链上交易(Trading)的用户也有影响。
为了抢在竞争对手前面攫取 MEV,玩家往往会支付高额 Gas 价格,挤占普通用户的交易空间。
此外,为了攫取尽可能高的 MEV,整个供应链可能都尽可能延迟交付,从而使自己有尽可能多的时间,寻求更有利可图的机会。这样一来,区块的提交时间也会往后推,很多区块在同步上甚至错过 Slot 结束时间,这给以太坊的稳定性和安全性造成了肉眼可见的威胁。
结语
MEV 作为近年来方兴未艾的研究领域,越探越发现水很深。其中,关于很多细分主题的讨论才刚刚起步,离结论尚远,没人能预测未来会走向何方。尽管如此,MEV 可以说是区块链领域中,机制设计巧思的集中体现。这也是 MEV 的迷人之处。即便不参与其中,MEV 也不失为脑力激荡的思辨练习。