|分析 Mempool,复盘“黑色星期四”( 五 )
下面我们用 1866 号拍卖作为例子来说明上述过程:
- 一个 “0 价格竞拍机器人” 在 UTC 时间 15:59:50 时以 200 Gwei 的价格发送一笔 0 价格竞拍交易 。 该交易在 26 秒后成功上链 , 10 分钟倒计时就此开始 。
- 一个 “诚信看护者机器人” 在 16:08:01 时以 450 Gwei 的 Gas Price 发送一笔竞价交易 。 这笔交易是在 10 分钟内发出的 —— 之隔了 8 分 11 秒 —— 而且 Gas 价格还是最初那笔 0 价格竞拍交易的 2.5 倍 。 如果能在接下来的 1 分 49 秒内被打包到区块中 , 1866 号拍卖就会像大家预期的那样进行 。 但是 , 这笔竞拍交易因为这个好机器人之前发送的一笔交易被丢弃(也就是产生了 nonce 空缺)而被卡住了 。
- 这个好机器人在 16:15:31 又发出一笔 4500 Gwei 的竞价交易 。 但是哪怕 Gas Price 提高了 10 倍也无济于事 , 因为这个地址被 nonce 空缺锁死了 。 再然后 , 等到竞价交易不再被卡的时候 , 已经过了 10 分钟的窗口期 , 交易自然就失败了 。
Gas Price 的迅速上升、导致 Gas 价格估计失灵的交易池压缩 , 同样对其它价格信息传输机制造成了负面影响 。 这导致了定价方面的混乱 , 也有可能使得面临清算风险的 CDP 持有者推迟了添加担保品的决定 。
总结我们的发现
总结一下 , 我们对 “黑色星期四” 交易池状况的事后检验暗示了下述情况:
- 多种 Hammerbot 的活动导致挖矿节点的交易池饱和 。 这推高了以太坊网络的拥堵程度并使之不断上升 。
- 发送许多以同样的 Gas Price 发出的置换交易在点对点 gossip 层和节点本身产生了巨大的开销 。
- 正常交易的传播受到阻碍 , 大量的交易被挖矿节点丢弃或者拒绝 。
- 这又反过来提高了出现 nonce 空缺和卡壳交易的几率 , 还扭曲了对 Gas Price 的估计 。
- 虽然自动化的交易系统通常被设计成会自动提高交易的 Gas Price , 许多交易系统并不能很好地处理 nonce 空缺问题 —— 甚至是完全束手无策 。
为加速这个发现过程 , 我们现在把那两天的交易池存档数据开放给社区 , 我们希望这能促进对交易池在 “黑色星期四” 及以太坊网络其它类似事件中所扮演的角色的研究 。
建议:保护好你自己 , 以及你的用户
交易池是区块链生态系统非常关键的一环 , 虽然它瞬息万变 , 常常被忽略 。 因此 , 交易池中藏着很多开发者和用户 “完全无知的未知之物” 。
现在 , 我们并不知道有多少人在开发这样的利用交易池弱点的技术 —— 只是显然有人在利用交易池的特点 。 我们也不知道有多少这样的弱点存在 —— 只是那些复杂的利用方法似乎已经在现实中证明了其有效性 。
因此 , 我们建议所有交易、所有协议、所有钱包供应商和交易员:
- 持续监控交易池的情况 , 注意(1)发现交易池开始变得拥堵的时机;(2)交易丢弃率和拒绝率的变化 。
- 理解交易 nonce 排序的细微差别 。 即使合理构造的交易也可能被卡在网络的某个角落 。
- 主动观察被卡壳的交易 , 并且要知道加速先前的哪一笔交易能使发送交易的地址脱困 。
- 基于交易池中对矿工有吸引力的部分来计算 Gas Price 。 还需要知道你所依赖的 Gas Price 报告服务所用的算法 。
推荐阅读
- 电玩迷|分析师称多个游戏大厂主机游戏销量数字版占比已过半
- 前瞻产业研究院|2020年中国工业清洗剂行业市场现状及发展趋势分析 环保型清洗剂需求正加速增长
- 装置分析|中国力排众议果断接手,德:不可能完成,世界难题让25国相继退出
- 魔兽世界|魔兽世界:P5阶段,战士黑曜石胸甲利弊分析,狂暴战不喜欢它
- 商榷|8.3早盘黄金高开能否高走再续新高?日内黄金走势分析
- 胡十三|战士黑曜石胸甲利弊分析,狂暴战不喜欢它,魔兽世界:P5阶段
- 上单|LOL:青钢影成TI上单,透过数据分析,不灭之握为何能让其重回主流
- 分析|美国,劳动力市场可能造成永久性冲击
- 分析|一个警示性的信号:美国裁员可能会永久化
- 硅谷分析狮 三星又关闭在华最后一家PC工厂:仍重视中国市场,将手机产能全部转出后