作者:Daii 来源:mirror
上周三(3 月 12 日),一位加密交易者,被 MEV 攻击一次性损失 21.5 万美元的事情刷屏了。
简单来说,这位用户本想在 Uniswap v3 交易池中将价值 22.08 万美元的 USDC 稳定币兑换成等值的 USDT,结果却仅仅得到了 5,272 USDT,短短几秒内资产瞬间蒸发 21.57 万,见下图。
上图就是这笔交易的链上记录的截图。发生这种惨剧的根本原因,就是遭遇了区块链世界臭名昭著的「三明治攻击」(Sandwich Attack)。
最先披露此次 MEV 攻击的是 Michael(见上图),他解释说:
An MEV bot front-ran the tx by swapping all the USDC liquidity out. After the transaction executed, they put back the liquidity. The attacker tipped a block builder (bobTheBuilder) $200k and profited $8k from this transaction.
译文:MEV 机器人通过换出所有 USDC 流动性来抢先 tx。交易执行后,他们放回流动性。攻击者向区块构建者 (bobTheBuilder) 打赏了 20 万美元,并从这笔交易中获利了 8000 美元。
上面的内容存在笔误,MEV 攻击机器人换出的是大量的 USDT,而不是 USDC。
不过,看完了他的解释和新闻报道,你可能还是一头雾水,因为里面有太多的新名词,像三明治攻击(Sandwich Attack)、抢先(front-ran the tx)、放回流动性(put back the liquidity)、向区块构建者打赏(tipped a block builder)等。
今天,我们将以这起 MEV 攻击为例,拆解其全过程,带你一探 MEV 这一黑暗世界。
首先,我们需要解释一下什么是 MEV。
1. MEV 是什么?
MEV 最初被称为矿工可提取价值(Miner Extractable Value),指的是矿工通过在区块链区块中对交易进行重新排序、插入或排除操作所能获得的额外利润 。这种操作可能导致普通用户付出更高的成本,或者获得更不利的交易价格 。
随着以太坊等区块链网络从工作量证明(Proof-of-Work,PoW)共识机制转向权益证明(Proof-of-Stake,PoS)共识机制,控制交易排序的权力从矿工转移到了验证者手中。因此,术语也相应地从“矿工可提取价值”(Miner Extractable Value)演变为“最大可提取价值” (Maximal Extractable Value)。
尽管名称发生了变化,但通过操纵交易顺序来提取价值的核心概念仍然一样。
上面的内容还是有点专业,你只需记住:MEV 之所以存在,是因为以前的矿工、现在的验证者拥有一项权利,对内存池(mempool)里的交易进行排序。这个排序是发生在一个区块里面,现在以太坊大概 11 秒左右出一个区块,那就是说每 11 秒就会有一次这样的权力行使。同样,这一次 MEV 攻击也是通过验证者排序实现的。
点击这个链接,你会看到与本次攻击相关的编号为 22029771 的区块所包含的交易内容,如下图。
请注意,上图 1、2、3 交易就是本文开头所说的那个 MEV 攻击,这个顺序是验证者(bobTheBuilder)排列好的。为什么可以这样?
2. MEV 的原理
要理解 MEV 的工作原理,我们需要先明白区块链是如何记录和更新信息的。
2.1 区块链状态更新机制
区块链可以被看作是一个不断增长的账本,它记录了所有发生的交易。这个账本的状态,例如每个账户的余额、Uniswap 交易池中各种代币的储备量等,都是由之前的交易决定的。
当一个新的区块被添加到区块链上时,这个区块中包含的所有交易都会被按照它们在区块中的排列顺序逐一执行。每执行一笔交易,区块链的全局状态就会相应地发生改变。
也就是说,不只是区块的顺序很重要,区块中的交易排序也很重要。那么区块中的交易排序又是如何决定的呢?
2.2 验证者决定交易排序
当用户在区块链网络上发起一笔交易时,例如这一笔通过 Uniswap 把 USDC 转换为 USDT 的交易,首先会被广播到网络中的节点。经过初步验证后,这笔交易会进入一个名为“内存池”(mempool)的区域。内存池就像一个等待区域,其中的交易尚未被确认并添加到区块链的下一个区块中。
以前的矿工(在 PoW 系统中),现在的验证者(在 PoS 系统中)有权从内存池中选择交易,并决定这些交易在下一个区块中的排列顺序。
区块中交易的顺序至关重要。
-
免费下载或者VIP会员资源能否直接商用?本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
-
提示下载完但解压或打开不了?最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。
-
找不到素材资源介绍文章里的示例图片?对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
-
付款后无法显示下载地址或者无法查看内容?如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理
-
购买该资源后,可以退款吗?源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源
评论(0)