前言
MEV是MinerExtractableValue的缩写,即矿工可提取价值。2019年,智能合约研究员菲尔·戴安和他的同事们一起撰写了FlashBoys2.0论文,并创造了"矿工可提取价值"一词。现如今,人们将之称为MaximalExtractableValue--最大可提取价值。
知道创宇区块链安全实验室本次浅谈一下充满研究意义的MEV。
MEV概念与原理
一、什么是MEV?
MEV是指区块链矿工可以通过重新排序、审查或插入交易而无需许可地提取的总价值。简而言之就是矿工对其所在区块的一切交易的顺序有控制权,能够随意控制交易的顺序,并以此来进行获取利益。
自2020年1月1日起至今,据官方数据统计,提取的MEV至少价值9亿美元。不难发现,提取的MEV正成N倍疯涨,就如DanRobinson的《EthereumisaDarkForest》一文中提到的那样,MEV在未来只会更加可怕。
二、为什么会出现MEV问题
我们可以将比特币、以太坊等区块链网络比作一本账本,而“矿工”负责将待处理的交易信息打包成区块,然后由整个网络进行验证,并添加到全球的账本中,对于交易信息记录的先后顺序完全是由矿工决定的。
由此,矿工们为了获取更大的利润,往往会根据gas费用的高低来决定交易顺序;矿工根据自己决定交易顺序的权利来获取额外的利益,这种获得的收益就是MEV。
由Infinity Swap推出的Bitfinity EVM已部署至IC主网:4月17日消息,由IC生态DEX InfinitySwap推出的Bitfinity EVM已上线Internet Computer(IC)主网。Bitfinity EVM将使得IC成为EVM兼容链,开发者可以在其上部署Solidity合约。[2023/4/17 14:09:03]
尽管最初MEV被称为“矿工可提取价值”,但现在人们更倾向于称MEV是“最大可提取价值”,因为现如今的大部分MEV行为不是由矿工发起的,而是由DeFi交易者和套利机器人替代。
在以太坊内存池中,MEV搜索者用套利机器人监控待处理的交易,并试图利用它们创造的有利可图的机会。
技术角度来说,MEV的产生是源于区块链中交易信息被传送到网络与实际交易信息被打包至区块之间存在延迟。
而处理方式却是构建一个共享的待处理公开访问内存池,在该交易被打包至区块之前,该交易会存放在mempool中,公开的mempool会导致别有用心者可以有意监听mempool,寻找可以获利的机会。
其中就包括,插入新交易,重新排序交易序列等手段。而这些都显示了矿工对交易的打包有着极大的控制权。
MEV的利用和防范
一、典型攻击手段
Kava联创:若Evmos不能免费使用,Kava将构建和维护一个免费的EVM兼容模块:金色财经消息,Kava联合创始人兼CEOScottStuart发推表示,如果Ethermint(现Evmos)不能免费使用,Kava将构建和维护一个永久免费使用的EVM兼容模块。2021年10月Cosmos开发的Ethermint由于商标问题以及范围扩大升级为Evmos,它允许通过IBC与以太坊主网、EVM兼容环境和其他BFT链互操作。[2022/8/30 12:56:55]
1、抢跑
在以太坊内存池中存在一笔订单交易,攻击者使用略高于此订单的gas费进行抢先交易。此时便能使用比市价更低的价格交易订单。
例如2021年10月29日,多个MCN-uniswap池遭受黑客攻击,主要原因是该代币合约烧币功能出现权限问题,使得任何人都能够对池子中的MCN进行烧毁。
攻击者烧毁池子中大量MCN代币,导致池子中MCN代币价格失衡,攻击者通过将事先换取的MCN代币换回大量WETH代币而获利。
然而该攻击事件被MEV机器人捕捉到,机器人在攻击者完成攻击之前抢先完成交易并获利17.2万美元。(https://etherscan.io/tx/0xd091afe6b37256ebb3dd703a9646b27aaf7ce7fe8832778886ba0216361f7f00)
Aztec Network开源EVM汇编语言Huff:7月28日消息,据官方推特,基于ZK Rollup的隐私和扩容解决方案Aztec Network宣布开源EVM汇编语言Huff。据悉,该语言由Aztec创始人Zac Williamson于2019年构建。[2022/7/28 2:42:48]
2、尾随
在以太坊内存池中存在一笔订单交易,攻击者提交一笔gas费略低的订单,当前一订单交易后,立即跟着交易,以此获利。
例如搜索者机器人在一个池子中发现有一大笔买入订单,由于池子中代币量减少,所以导致代币价格上涨,此时攻击者紧跟着卖出代币到池子中进行获利。
3、三明治夹击
三明治夹击是抢跑和尾随的一种结合,攻击者在交易者订单前后分别安插两笔交易,在交易者交易前抢先以更低的价格交易,在交易者完成交易后,紧接着将订单以跟高价格售出而获利。
二、主要防范策略
MEV表面上看是矿工和搜索者双双获利,皆大欢喜的事情。然而这种获利可以却被一些人看作是偷窃,因为此获利方法是以损失普通交易者的利益而来,通过MEV提取得来的获利全是取自每一位交易的普通用户。
此外,MEV还会造成区块网络的拥堵和gas费增长问题。随着越来越多的套利机器人进行gas价格竞争,无形中就消耗着区块链网络带宽造成网络拥堵,gas价格竞争愈演愈烈导致gas价格剧增。
Crypto.com生态EVM兼容链Cronos推出主网测试版:11月8日消息,Crypto.com生态EVM兼容链Cronos推出主网测试版,Cronos基于CosmosSDK,主网测试版的测试范围包括:EVM支持、最新版本CosmosSDK支持以及跨链桥(Crypto.orgChain和Cronos链间资产的转移)。Cronos的原生代币为CRO,可用于支付网络费用。此外,Cronos将支持Cosmos资产跨链至Cronos,以及推出CronosGravityBridge支持以太坊资产跨链至Cronos,预计会在2021年12月或2022年1月完成。
另外,Cronos合作伙伴ParticleB成立CROEVM基金,将为至少100个在Cronos上建立应用程序、工具和基础设施的项目提供每个项目高达100万美元的资助,ParticleB还资助Cronos漏洞赏金计划以加强该生态安全,同时Cronos黑客松也正在进行,截止时间为11月24日。[2021/11/8 6:39:20]
由gas使用量图我们不难看出,从2021年五月开始,gas使用量有着明显减少的趋势。这正是因为flashbots的MEV-Geth日渐普及,这也是防范MEV的主要措施之一。
FlashbotsAuction概念与使用
一、Flashbots简介
侧链项目Milkomeda将允许与EVM兼容的智能合约在Cardano主网上执行:8月26日消息,IOHK(负责Cardano协议的研发)首席执行官Charles Hoskinson表示,他很高兴区块链初创公司dcSpark的新侧链项目“Milkomeda”将允许与EVM兼容的智能合约在Cardano主网上执行。此外,Milkomeda项目承诺在未来提供Cardano和其他L1区块链之间的互操作性,如Solana。(Crypto Globe)[2021/8/26 22:39:26]
Flashbots成立于2020年11月,是一个针对MEV的去中心化研究和开发组织,致力于公开化MEV提取细节,使其透明化,民主化。
Flashbots的项目业务分3个大类:flashbotsauction,flashbotsdata,flashbotsprotect。
flashbotsauction在以太坊用户和矿工之间提供了一个私人通信渠道,用于在一个区块内有效地传达首选交易顺序,flashbotsdata则是用来扫描以太坊MEV数据并存储在Postgres中以供查询和分析。
flashbotsprotect是将flashbotsauction中除去客户端等复杂部署剔除,抽象出交易捆绑打包等功能,让Metamask等钱包可以集成flashbotauction的MEV保护功能。
flashbots核心项目FlashbotsAuction包括mev-geth,一个位于go-ethereum客户端之上的补丁,以及mev-relay,一个交易包中继器。
二、MEV-Geth和MEV-Relay的运作流程
1、使用者可使用MEV-Geth中的交易捆绑,其中包含:交易搜索者和/或其他用户的内存池中待处理的一个或多个事务。交易搜索者通过智能合约调用向矿工支付的小费函数。并且,Flashbots捆绑包将始终位于该区块的顶部。
2、MEV-Relay接收捆绑交易,并将其发送给所有列入白名单的MEV-Geth矿工。
3、矿工从MEV-Relay接收Flashbots捆绑包,并在MEV-Geth中对其进行处理。
4、MEV-Geth从发送的所有捆绑交易中选择利润最高的捆绑交易上链,将捆绑交易放到一个新的区块的顶部。
5、然后,MEV-Geth将包含此捆绑包的区块与不包含任何捆绑包的区块进行比较。
6、仅当交易搜寻者的捆绑包包含在一个区块中时,与他们的捆绑包相关的小费才会被支付。
7、如果区块没有包含捆绑交易,该交易没有上链,则交易搜索者和/或其他用户不会花任何钱,即交易失败或者取消交易都无需支付Gas费。
FlashbotsAuction架构介绍及演示
FlashbotsAuction架构提出了一个由三个不同方组成的网络。架构抽象出三方角色构成网络。代表用户的searcher,代表代理服务的relay中继器,代表矿工的miner,三者让客户可以使用这些方专门执行维持该通信渠道所需的部分工作。
Searcher
Seacher代表想要利用MEV的以太坊用户,他们可以使用Flashbots私人交易池,而不是常规的p2p交易池。这些用户监控着链的状态,并将可套利的交易捆绑包发送至中继器。
目前生态上的searcher一般有以下几类:
1、寻求快速、无风险访问区块空间的以太坊机器人运营商
2、寻求交易抢先保护的以太坊用户
3、具有高级用例的以太坊Dapps,例如帐户抽象或无气体交易
Relay
交易打包成bundle后,会通过几个叫Relay的基础设施传播到各个server,并将其转发给各个minner节点。
当searcher使用flashbots服务,利用relay来发送他们的交易偏好,他们就不需要为失败的交易出价付费。由于以太坊节点无法自行处理这种级别的负载,中继器便承担了缓解这种DOS威胁功能。
除此了解决垃圾交易问题,中继者隐私也是FlashbotsAuction架构必须解决的问题,以便实现完全的去中心化。目前,Flashbots组织运营一个名为MEV-Relay的中继器。
下图则为MEV-Relay入口演示。
所获得的区块高度如图:
中继服务拥有对捆绑内容的完全访问权限,可以任意重新排序,插入,审查发送给他们的捆绑包,还可以通过发送无效捆绑包来DOS矿工。所以不建议使用外部中继器集成,这会产生很大的系统性风险。
Miner
矿工是最终收集所有捆绑包并产生区块的一方。传统矿工会使用以太坊客户端进行区块的挖掘,而我们的Miner使用flashbots提供的特殊维护的MEV-Geth客户端,实现捆绑包的接收和交易的排序。
Flashbots包中包含的信息允许searcher向矿工发送他们需要的交易顺序以求利益最大化,这样可以使矿工实现MEV组合获利,而不是在单一维度上争夺优先权。矿工可以评估所有收到的捆绑包,并将不冲突的捆绑包组合起来,以尽可能产生最有利可图的块。
以下为Minner打包交易的运行结果简析。
MEV-Geth节点会第一时间评估传入的捆绑包,并选择利益最大化的捆绑包放在区块的顶部。然后该节点将Flashbots块与普通块进行比较,并开始挖掘最有利可图的块,测试如下。
运行结果如下
Searcher会对针对即将打包至下一个区块的交易进行监视,会使用更高的gasprice,将可套利的交易捆绑包发送,并让矿工抢先打包至区块,Searcher清楚地表达交易偏好是成功拍下区块的重要原因,这也有效避免了网络其余部分的负面外部性。
总结
MEV的兴起导致了一系列的问题,尽管MEV为矿工带来了额外的利润,同时也损失了其他用户的利益,引起了以太坊环境的变化。
flashbots为MEV问题设置的解决办法也并非完美,尽管套利者之间的竞争被移到了另一个网络中,解决了以太坊网络拥堵和Gas费剧增的问题,从客观角度来看,MEV-Geth是否违背了去中心化的原则。
新的MEV提取策略不断被发现和创建,当前对MEV问题的防范措施也可能会过时,对于MEV问题的研究仍需要我们不断地探索。
根据Crypto.com的一份报告,到今年年底,全球加密货币持有者的数量预计将超过10亿。该公司表示,各国再也不能忽视公众对加密货币日益增长的推动。在许多情况下,期望对加密行业采取更友好的立场.
1900/1/1 0:00:00親愛的ZT用戶: ZT創新板即將上線</article><divclass="news_detail_footer-kcwr"><divclass="detail_top-kcwr"><p>本文来源于非小号.
1900/1/1 0:00:00Anewjourney,这是一场革命已经开始。我们现在目睹的主要变化之一是从Web2结构到Web3结构的转变。Web3的核心是去中心化。这是创新获得动力的前提。即将发生的一项重大变化是公司、组织和小型初创公司可能运作和开展业务的方式.
1900/1/1 0:00:00Jan.2022,?Sabrina@footprint.networkDataSource:ArweaveDashboardArweave是一个去中心化的云存储解决方案,旨在利用区块链颠覆传统的存储市场.
1900/1/1 0:00:001Spellfire(SPELLFIRE)TokenSaleResultTheGate.ioStartupSpellfire(SPELLFIRE)saleresultisasfollows:SPELLFIREStartupSaleAm.
1900/1/1 0:00:00据LedgerInsights1月25日消息,卢森堡金融监管机构CommissiondeSurveillanceduSecteurFinancier(CSSF)发布了一份关于区块链的白皮书.
1900/1/1 0:00:00