自从Daian等人在2019年的?Flashboys2.0?论文中引入矿工可提取价值以来,关于MEV的讨论已经很多。特别是,FlashbotsAuction的推出推动了当今跨越各种区块链和中心化交易所的十亿美元经济。从激动人心的Twitter话题到学术研究论文,MEV现象已成为加密货币讨论的核心。然而,奇怪的是,对于MEV的正式定义并没有达成一致。
虽然有些人可能会争辩说,在大多数情况下,广泛共享的、直观的MEV概念就足够了,但我们认为,适当的正式化对于建立可以进行复杂理论化的基础至关重要。正如TimRoughgarden在最近一次关于构建DeFi理论的演讲中所说的那样,在“简单”和后来的“困难”定理之前,第一步是要有定义和基本词汇。此外,正如最近的公开讨论所证明的那样,有些人声称套利不是MEV,甚至可能是我们根本不共享MEV的直观概念!一个统一正式的MEV定义肯定会有所帮助。
然而,事实证明,以稳健、通用的方式正式化MEV并非易事。在这篇文章中,我们探讨了在尝试提出这样一个定义时遇到的一些困难。我们首先回顾一些现有的正式化,指出它们的一些问题,并继续寻求对其中一些进行修正。虽然我们提出了改进其中一些问题的新定义,但我们的主要贡献在于突出了所涉及的许多微妙之处,为未来围绕MEV的工作采用更系统的方法铺平了道路。
当前MEV定义
数据:某鲸鱼花费2,885枚ETH购买UNIBOT、RLB、BITCOIN和MEVFree:金色财经报道,据Lookonchain监测,在过去的16天里,某鲸鱼总共花费2,885枚ETH(533万美元)购买UNIBOT, RLB, BITCOIN和MEVFree。
这头鲸鱼目前持有1085枚ETH(合196万美元),购买还在继续。[2023/8/7 21:29:32]
最初的Flashboys论文将MEV定义为“在给定时间范围内,以太坊矿工可以从交易操纵中提取的总量,其中可能包括多个区块的交易价值”,但没有尝试正式定义。最近,广泛采用的工作定义类似于:
MEV是区块提议者可以通过重新排序、审查或插入交易而无需许可地提取的价值。
也许最接近正式化的定义是最近的ClockworkFinance论文中通过以下两个表达式给出的定义:
和:
这里,EV是在给定一组有效区块序列B的情况下,玩家p在状态s中可提取的价值,(B1,...,Bn)就是这样的一个序列,而b(p,Sk)是玩家p的余额在将区块(B1,...,Bk)应用于s后的状态。k-MEV是处于状态s的玩家p作为区块提议者的k-最大可提取值,其中validBlocksk是p可以创建的k个区块的所有有效区块序列的集合,而单区块MEV仅为1-MEV。
某MEV机器人在Meme币交易中执行三明治攻击获利超140万美元:4月20日消息,据 NFT 数据和研究平台 Sealaunch 监测,名叫 jaredfromsubway.eth 的 MEV 机器人在近日对 WOJAK 和 PEPE 等 Meme 币的买卖双方执行三明治攻击中获利超 140 万美元。
此外,Sealaunch 表示在 4 月 18 日至 19 日的 24 小时内,MEV 机器人花费了以太坊 Gas 费的 7%。[2023/4/20 14:16:06]
为了记数简单性,这些表达式与论文中的表达式略有调整,但在其他方面是等效的。特别是,我们考虑玩家的余额而不是账户,并删除对链的原生资产的显式引用;稍后我们将回到这一点。
我们将使用MEV的这个定义作为起点,并注意到大多数其他论文提供了面临相同限制的类似定义,或者根本不提供正式定义。
现存的限制
我们首先注意到上述表达式中的一个致命缺陷:最大可提取值取决于玩家p!这意味着如果p有一些待处理的空投领取,他们的MEV将大于没有的玩家。虽然这对于可提取值可能有意义,但它肯定与“无许可提取”价值的想法不一致。
仔细检查后,并不完全清楚“玩家”的概念实际上指的是什么。我们可以确定至少三个相互交织的含义:i)作为交易签名者的玩家,拥有余额和控制账户,ii)作为协议游戏中的参与者,拥有区块提议权,以及iii)网络意义上的玩家,受延迟影响并拥有独特内存池视图的节点运营商。
Safe、BitKeep等超30个项目合作推出MEV Blocker RPC:4月5日消息,Safe、BitKeep、DODO、Oasis、Balancer、1inch等超过30个以太坊项目合作推出MEV Blocker RPC,该工具旨在保护用户免受各种类型的MEV攻击。
MEV Blocker RPC是一个路由用户交易到“搜索器”网络而不是公共内存池的工具,这些搜索器通过竞标获取反向运行交易的权利,保护用户免受抢先交易和三明治攻击。[2023/4/5 13:46:40]
虽然后一种含义可能不适用于这个公式,但含义i)和ii)有点混淆:p在谈论(1)中的余额时肯定指的是i),但在从到,我们还赋予了p区块提议权,符合含义ii)。我们认为MEV的正确定义应该独立于i)意义上的玩家,也就是说,它不应该依赖于特定的签约权。关于ii),我们将定义给定区块提议权限的MEV。这有效地将问题一方面解耦为价值提取,另一方面获得排序权,这在考虑提取成本、网络安全等时可能会很有用。
上述定义的其他注意事项是对多区块MEV的处理、因撤回交易而产生的费用的遗漏,以及试图将MEV推广到跨域设置时区块概念的不足。在接下来的内容中,我们尝试修补定义以在可能的情况下解决其中的一些问题,并讨论我们在此过程中发现的一些其他困难。
修补MEV
如上所述,首要任务是提出一个真正无需许可的MEV定义。我们将在可提取值的定义中保留玩家依赖性,但在移动到MEV时摆脱它。我们在这里注意到,我们在上面i)的意义上使用player,赋予它对EV和MEV的完整区块排序权限。我们提出以下建议:
MEV机器人遭黑客攻击,损失超2000万美元:4月3日消息,据推特用户3155.eth在社交媒体披露,某些顶级MEV机器人被锁定为黑客的攻击目标,三明治套利中的交易模块被替换,目前已造成超过2000万美元的损失,这可能成为可能是整个MEV生态系统的主要转折点。简单解释为黑客拿到了三明治套利的大户bot的bundle交易,bundle里有3个交易为1.大量买入,2.被夹用户的交易,3.大量卖出。黑客拿到了这个bundle,拆解了bundle,把2替换了成自己的交易,用便宜代币换走了bot的资金,之后第3步交易失败。”此外,根据@punk3155的推文,某MEV机器人遭遇了上述攻击,总损失已达2000万美元。[2023/4/3 13:41:50]
这里的第一个表达式与(1)非常相似,但我们删除了对有效区块序列集的依赖,这是隐式的,我们只考虑单个块。这里的validBlocks(p)是p可以提出的有效区块的集合。B(s)反过来表示通过在状态s之上应用区块B获得的状态。
在表达式(4)中,我们获得了MEV的定义,根据需要,该定义独立于玩家。虽然在最大可提取值的定义中找到最小值可能有悖常理,但这个最小值只是编码了提取应该是无许可的想法。EV已经负责最大化,无需许可即可提取的价值是特权最低的参与者可以从网络中获取的价值。
Offchain Labs和Matter Labs计划为Layer 2网络集成抗MEV机制:以太坊扩容团队Matter Labs首席执行官Alex Gluchowski和Offchain Labs首席技术官Harry Kalodner都表示将集成可以对抗MEV(矿工可提取价值)的方案。Offchain Labs表示在探索一种相对比较新颖的方案,可能不会在刚开始的时候提供,其联合创始人和首席执行官Steven Goldfeder,同样也是MEV学术论文的作者之一,最近联合发表了一种全新的共识算法论文《Order-Fairness for Byzantine Consensus》,将排序这件事去中心化。Matter Labs表示将通过零知识证明和VDF(可验证延迟函数)技术隐藏交易内容,彻底避免MEV。[2020/12/7 14:29:20]
然而,这个定义引出了一个问题,当挖矿需要前期资本时会发生什么?定义(2)没有这个问题,因为它对玩家有明确的依赖,但是现在删除了它,我们需要考虑到某些MEV可能只能在某些初始资本水平下才能提取。然而,我们注意到gas费用不是这里要求的一部分,因为提议者可以随意排序“免费”交易,因此即使没有初始资本,通常MEV也可能大于零。
尽管如此,我们希望明确对资本的依赖,因为许多MEV机会都依赖于它。我们写中的EV):
这个定义告诉我们,状态s中初始资本K的最大可提取价值是任何至少拥有该数量初始资本的玩家可以提取的价值。
我们考虑的下一步是内存池中的交易会发生什么。在上面我们考虑了“有效区块”,但至关重要的是,这些可以包含已撤回的交易,即支付费用,但不修改状态。这是一个棘手的问题,因为它涉及上面的含义iii)对玩家来说,因为内存池的不同视图会产生不同的有效区块集。虽然在实践中提取MEV的搜索者不断在内存池中寻找机会,但交易最终需要包含在一个区块中以修改状态并产生机会,因此如果我们在有效交易方面不失一般性只考虑状态变化,而不是更一般的有效块概念。在这种情况下,我们确实丢失了作为MEV来源的撤回交易,因此我们可以尝试修改我们的公式以包含依赖于玩家的内存池的视图,但这会混淆i)和iii)的含义,并且我们会遇到最小化过度玩家时的麻烦。考虑到内存池架构仅针对某些领域,这也会限制表达式的泛化性。因此,我们明确排除了作为MEV来源的撤回交易,但请注意,它们是排序器带回的收入的一部分,并有助于MEV提取的负外部性,如可提取价值成本?所量化。
省略撤回交易使我们能够走得更远,超越区块的概念,这将使我们能够在更一般的领域中考虑MEV。我们将可提取价值的定义重写为:
这里,S是所有状态的集合,符号SapS'表示状态S'可以通过玩家p的某个动作或动作序列ap从状态s到达。与上面的等式(5)一起,我们获得了可以轻松推广到跨域情况的定义,并解决了我们在定义(1)和(2)中遇到的大多数问题。
悬而未决的问题和扩展
在修补MEV定义时,我们转向了单区块,彻底解决了多区块MEV的问题。事实上,我们最新的表达式(5)和(6)会自动考虑到这一点,因为通过根据状态而不是区块来表达EV,这些公式适用于提议者拥有排序权的任何时期。现在的问题成为如何获得这些订购权的方法之一。为了干净利落地做到这一点,我们需要归因于不同事件的概率,这样我们就可以得出总MEV的预期值。然而,这超出了MEV形式化的范围,因为一旦定义了足够的集成,就可以简单地插入表达式(5)。
我们顺便提到的另一个话题是跨域MEV。在一个不同链有自己的状态更新机制,但通过其状态中的依赖关系有效链接的世界中,我们希望找到MEV,它只能是通过对多个域中的状态变化进行排序来提取。我们在状态方面的表述适用于这种扩展,但需要注意的是,不同的域具有不同的本地资产,我们需要考虑到这一点。我们不会在这里详细介绍,但是可以通过引入定价功能来解决这个问题,以便从一个域转换到另一个域。首先近似,我们可以取一个定价函数pi→j从域i的本地资产到域j的资产,并要求pj→i=1/pi→j。更现实的是,我们预计价格是许多因素的玩家依赖函数,如不同域的不同资产数量、域的信任假设等。
我们注意到,自始至终,我们都将EV和MEV视为玩家的收入,从未考虑过成本。这与我们对具有给定订购权的玩家的定义相吻合,因为获得这些权利可以说是MEV提取中成本最高的组成部分。无论如何,将MEV仅视为收入组成部分并单独考虑提取成本似乎更清晰。就像在多区块设置中一样,我们可以定义一个概率集成来获得排序权,并考虑与每个概率分布相关的成本。然而,更棘手的是,排序权限通常以每个域的特征为单位授予,而成本通常表示为费率。因此,虽然MEV通常以区块形式出现,但生产这些区块的成本将以时间单位表示,并且它们之间的关系的细节将因每个域而异。每个域如何实现最终确定对于建立这种关系也至关重要,所以我们不期望有一种MEV的通用公式来适应它。
最后,我们只考虑了“确定的”MEV,用状态改变后增加的余额来表达它。这不足以描述更一般的“概率MEV”概念,在这种概念中,玩家愿意承担风险以期获得以后的回报。这方面的例子是在预期价格上涨时买断新的代币清单,或者抢跑NFT出价。很可能这些机会中的大部分都可以通过合并定价函数来描述,我们期待看到朝这个方向发展的工作。
结论
MEV兴起需要一种一致的正式方法来解锁正确的理论。然而,正式化MEV涉及大量的技术细节,这些技术细节通常会为了完整性而权衡通用性。在这里,我们为参与者的概念提供了明确的含义,这使我们将获得排序权的问题与价值提取的问题分开,使我们能够在定义MEV时具有很大的普遍性。我们的公式(5)和(6)提供了一个一致的、易于推广的定义,可以用于多领域世界。我们还强调了在实现MEV的正式定义时面临的许多问题,我们希望这些问题能够更系统地处理该主题。
来源:Flashbots
感谢PhilDaian、AlexObadia和MahimnaKelkar就该主题进行了大量讨论。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。