三明治攻击是什么?预防三明治攻击的方法详解
三明治攻击是一种吃你豆腐的抢先交易,据估计一年潜在获利超过百万美金,矿工可以看到所有未被打包的暂存交易,发现有利可图就可以在其中安插对自己有利的交易,透过贿赂的方式(提高gas 费) 让自己的交易优先被处理。考量到贿赂成本、交易手续费,只有在特定情况下有获利机会,这时候才会发动三明治攻击,三明治攻击大多是由MEV 机器人发现与发动,迷因币因为流动性低、交易快、高滑价的特性更容易被三明治攻击。预防三明治攻击的方法:设定滑价限制、使用防三明治攻击的服务(钱包、RPC)。
根据估计,交易者每年被三明治攻击赚走数百万美元
根据估计,每年从三明治攻击中获得的利润在百万到数百万美元之间,尤其常出现在低流动性的迷因币交易。
如果你不知道三明治攻击是什么那你可能就是正在被攻击的新鲜韭菜
因应如此庞大的市场机会,抗MEV 也成为另一种领域赛道。2023 火热的Telegram BOT,其中就有多款机器人具备MEV 保护的功能,帮助你炒币不被扒皮。
或直接从DeFi 协议的层级来抗MEV,例如可以防止三明治攻击的去中心化交易所:
三明治攻击是什么-一种吃你豆腐的抢先交易
直接先看两张示意图:
在这个案例中,原本只要花$63.8 就能买到一千颗狗狗币,实际上却花了$64,因为被矿工抢先交易吃了豆腐。
差$0.2 似乎很少,但这只是个案例示意,真实情况中,差距达5%、10% 甚至以上都有可能,该笔交易金额愈大被赚走的愈多。
白话说明什么是三明治攻击:
其实就是插队
矿工发现有利可图的交易后,在该笔交易前后抢先安插其他交易,例如在你要买进之前先买进,价格拉高后倒卖给你;或反过来在你卖出之前先卖出,价格压低之后再跟你买回。
在你的交易之前抢先交易,吃豆腐占便宜。
为什么会发生三明治攻击-基于区块链MEV
之所以会发生三明治攻击,是基于区块链本身的运作机制。
当我们在链上发起一笔交易,这笔交易会先被送到公开的交易池暂存,这池被称为mempool,等到共识机制选出下一个要负责打包区块的矿工,该矿工就会从mempool 中选出交易打包成区块上链,一旦上链后交易就不能更改了。
在发送到mempool 之后,到打包成区块之前,这之间的时间差就让矿工有赚钱的机会,这被称为MEV (Miner extractable value) 矿工可提取价值。
一句话说明MEV 是什么
在发送交易到被打包成区块上链之间,矿工藉由调整交易顺序或在交易之间添加交易的方式能赚走的利润。
MEV 能赚的利润不只三明治攻击,还包含了套利与清算,原理都是在链上发现获利机会后,在交易打包之前添加对自己有利的额外交易来获利。
三明治攻击常见问答
为什么我的交易会被矿工看到
因为mempool 是公开的,所有链上矿工、验证者都看的到。
为什么矿工可以安插额外交易
因为处理交易的顺序取决于矿工,这可以透过提高gas 费来影响他们处理的顺序,也就是说可以透过提高手续费来贿赂打包区块的矿工,让他优先将交易安插进去。
三明治攻击实际流程是怎样
有人发起一笔交易,根据区块链的运作流程,交易在被打包进区块前会先被发送到mempool 暂存池公开广播,某矿工侦测到发现有利可图,在这笔交易前后添加对自己有利的交易,把这几笔交易先打包成bundle(打包交易),贿赂负责打包区块的矿工处理接受这个bundle,区块打包上链,交易完成,赚走收益。
速度这么快人类怎么跟的上
实际上是由机器人执行的,有许多MEV 机器人随时在监看有无赚钱机会,不只寻找三明治攻击机会,也做套利与清算。
为什么玩迷因币最怕被三明治攻击-低流动性+ 抢快
迷因币,根据维基百科的说明,指源自互联网梗图、搞笑图或有其他幽默元素特征的加密货币。2013 年底,一位软体工程师带着开玩笑的本意采用Doge 这个网络梗图来发行了狗狗币,就这样开启了迷因币的热潮。
尽管开创原因无厘头,但在市场中最容易因为「社群共识」而带来大幅流量进而导致FOMO 心态的币种也非迷因币莫属。迷因币动辄百倍、千倍的涨幅,造就了迷因币玩家「不怕买错,就怕错过」的心态。
但迷因币毕竟是小币居多,不是主流知名币种,通常还没上主流交易所,还在相对冷门的链或DEX 中才能交易,通常流动性都不够。
买卖迷因币时的两个特性:低流动性+ 怕错过的心态
怕错过就会抢快,没有耐性分批小额下单买卖,总是想快手一两笔买完,没有耐性细看交易设定,立刻就要下单成交,所以在交易时,交易者常常会调高滑价以让交易机率成功,能够最早买到。
低流动性让交易容易发生滑价,特定人士想要操控价格也相对容易。矿工更容易拉高价格,更容易拉高三明治攻击的利润。
综合起来,三明治攻击更容易发生在迷因币的市场,更有获利空间。某位链上匿名交易者,就靠着针对迷因币的三明治攻击,两天内赚了两百万美金。
预防三明治攻击的方法
下单时设定滑价限制
三明治攻击是一种链上交易的攻击,如果是在中心化交易所交易就不会有这问题。在去中心化交易所交易时,通常可以设定该笔交易可以接受的最大滑价,切记不要设定太高,滑价设定愈高+ 该笔交易金额愈大,愈容易遭受三明治攻击。
以交易所DODO 为例,在交易Swap 的介面右方小齿轮按下去可以做进阶设定,其中就可以设定最大滑价限制。
或Balancer 交易所,在Swap 右方小齿轮按进去也可以设定滑价限制。
这目前已经是多数去中心化交易所的基本功能,送出交易前务必要设定。切记:滑价设定愈高+ 该笔交易金额愈大,愈容易遭受三明治攻击。
但设定太低也会造成难以成交,关键还是不要在流动性不足的市场里做大额交易,宁可小金额分批买入。
使用防MEV 的服务(BOT、DEX、RPC)
直接使用提供MEV 保护的工具,例如文章前段提到的,2023 火热的Telegram BOT 中就有数个机器人提供MEV 保护功能。
或是直接在提供MEV 保护的去中心化交易所交易,例如CowSwap。
更进阶的方式是使用抗MEV 的RPC(Remote Procedure Call)。RPC 是区块链中的一种远端互动协议,用来将我们的交易发送到mempool 暂存池。某些抗MEV 的服务会提供不同的RPC,将交易直接发送给矿工处理,而不是发送到公开的mempool,以此来避免被三明治攻击。
做法上是找到对应的RPC 后,自行在小狐狸钱包Metamask 中设定更改。
可用的协议例如FlashBots,或知名去中心化聚合器1inch 推出的抗MEV 服务RabbitHole,都可以直接在Metamask 中添加它们的RPC 来做到抗MEV。
这就是相对进阶的方式了,需要对加密钱包有一定程度的理解,不建议新手使用。
声明:本站所提供的资讯信息不代表任何投资暗示, 本站所发布文章仅代表个人观点,仅供参考。