织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

解析以太坊抢先交易原理及其解决方案(3)

时间:2021-04-29 20:13来源:未知 作者:admin 点击:
提高 gas 费用,这会增加机器人的攻击成本。缺点:这同样也增加了自己的交易成本。 可以看出,以上解决方案都是无奈之举,且有各种不足,幸运的是,
  • 提高 gas 费用,这会增加机器人的攻击成本。缺点:这同样也增加了自己的交易成本。
  • 可以看出,以上解决方案都是无奈之举,且有各种不足,幸运的是,有很多团队认识到了 Front-Running 的危害性,并提出了不少有建设性的解决方案。首先通过对捕猎全过程的分析,我们可以得出结论,要实现 Front-Running,需要几个要素:

    • Transaction 公开性:可以在 Mempool 中获取交易的详细信息
    • 以太坊交易执行机制:可以通过 gas 竞争的方式抢先完成交易
    • AMM 交易曲线机制:恒定乘积机制可以造成较大滑点

    那么反制手段就是分别在这几个要素上做文章。

    Transaction 公开性

    既然机器人是通过分析 Mempool 中的交易来决定是否发起攻击,那么我们将交易信息直接加密,让机器人看不到或者看不懂不就好了?

    社区中就有人提议使用零知识证明技术 zk-SNARKs 来达成上述目标,即运用 zk-SNARKs 将每笔交易的信息都加密隐藏起来,让机器人无从下手。

    不过,目前该方案还不够成熟,存在需要消耗更高 Gas 费用和可能被利用来进行阻塞攻击,导致系统化整体 liveness 的缺陷。

    以太坊交易执行机制

    当前的以太坊交易执行机制是通过 Gas 竞争来完成的,即谁出的 Gas 费高,矿工就优先打包谁的交易,那么我们如果绕过这种机制,把交易发给矿工让其直接打包,就杜绝了抢跑机器人在中途攻击的可能性

    所以一种类似于 Layer 0 的方案也得到了一些应用,如星火矿池的 Taichi 服务,用户可以直接在 MetaMask 中设置 Taichi 的以太坊节点,这样交易就直接在没有出现在 Mempool 的情况下被打包了,但劣势是被打包的时效有一定的不确定性。

    另外,如 ArcherSwap 类似理念的解决方案,构建了交易者和矿工之间的桥梁,交易者可以通过打赏的形式让矿工直接打包自己的交易,这就避免了被 Front-Running 的可能。虽然有那么点交保护费来避免被攻击的感觉,但也实实在在的降低了交易者的成本,而且有着不收取交易失败费用的优势。

    AMM 算法优化

    在 AMM 机制下,大额交易产生过大的价格滑点(可理解为一个临时的错误价格),是 Front-Running 的利润空间,如果有一种 AMM 机制可以减少大额交易对后续交易价格的影响,就可以有效防止 Front-Running 攻击。
    早在 2018 年,Vitalik 在以太坊技术社区中提供了一个 方案,当发生兑换交易时,交易池价格不会立刻调整成真实价格,而是在若干分钟内,缓慢的趋向真实价格,这就好像交易池凭空多出了很多流动性一样,因此我们将这种技术称之为 Vitrual Balance (虚拟余额)技术。这种新机制,可大大压缩套利者的利润空间,有效防御 Front-Running 攻击,同时还可以增加流动性做市商的收益,可谓一举多得,1inch 的 mooniswap 就是这个方案的一个实现版本。 (责任编辑:admin)

    织梦二维码生成器
    顶一下
    (0)
    0%
    踩一下
    (0)
    0%
    ------分隔线----------------------------
    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    评价:
    表情:
    用户名: 验证码:点击我更换图片
    栏目列表
    推荐内容