关于夹子攻击以及 Solana 上的 MEV
PS:SOL 和 EVM 系的不太一样,EVM 系本身是有内存池的,这里不聊。
1. Jito-Solana 客户端
目前 Jito-Solana 的客户端市占率还在 85%+,我就聊这部分的东西。Jito 客户端本身带入了一些其他的东西,我这里主要聊这两个:Bundle 和 Jito Tip 。
- Bundle 包: 把多笔交易打成一个交易包(最多 5 笔),必定会顺序成交,同时会一起成功/或者一起失败,不存在其中第一笔交易成功第二笔失败的情况。
- Jito Tip: 不同于 SOL 本身的 Priority Fees ,Jito 客户端在打包 Bundle 包的交易的时候可以额外配置 Jito Tip ,让客户端加速打包 Bundle 包。
在 SOL 夹子最活跃的时候,就是 Jito 客户端有提供交易池的时候,攻击者通过交易池获取值得攻击的交易,然后把这笔交易打包成 Bundle 包的受害者交易(攻击交易 A-原始交易-攻击交易 B ),再配置一个 Jito Tip 小费( Jito 客户端对 Bundle 包会有额外的优先打包权重),来实现夹子攻击。
而在 2024 年 4 月 Jito 关闭交易池之后,SOL 本身已经没有公开的交易池了,攻击者是没办法获取到公开的交易数据的。而且有些交易打包直接打包成 Bundle 包( Bundle 包是不能再被 Bundle 一次的),这样就不会被攻击了。
2. 现在 SOL 上我理解不会被夹的原因
- 没有内存池了。
- 标准三方池提交的节点是安全的(如果你用了恶意的 RPC 节点,是有可能被夹子攻击的,这个应该是目前被夹的最大风险)。
- 出块的 Leader 如果有恶意的 MEV 行为很容易就被社区抛弃了,本身出块+质押的利润远大于夹子收入。
Jito 的浏览器: https://explorer.jito.wtf/bundle-explorer
浏览器里面可以查看 Bundle 包的交易详情,以及是否被攻击。