详解以太坊难度炸弹 第五次推迟 意味着POW终结可能再次延后

8月20日,以太核心开发者 Tim Beiko 在开发团队电话会议的内容回顾上表示,可能推迟12月的难度炸弹,但在合并前不会有新的 EIP。细数下来,这有可能难度炸弹第五次被推迟。为何难度炸弹一再推迟?它存在的意义又是什么?它和 ETH2.0 的合并又有什么关联?

1   难度炸弹的意义

难度炸弹是以太坊挖矿中致使挖矿难度迅速上升的开关。以太坊的挖矿难度除了与上一个区块的出块时间有关,还与该区块的难度因子有关。下面列出了难度的计算公式,前半部分是常规的难度调整,将每一区块的出块时间稳定在13秒;后半部分(即红框部分)即难度因子,决定了难度炸弹的开启时间和爆炸的速度。

图片

具体地,难度因子中包含了难度炸弹开启的目标区块高度,当区块高度没有达到目标值时,挖矿难度只受上一区块的出块时间影响;而一旦区块高度到达预定值,出块时间便会呈指数是上涨,随后每挖出10万个区块难度便会调整一次。

2015年8月4日,前以太坊首席商务官 Stephan Tual 首次提及了难度炸弹。

“很多人一直想知道我们如何在宁静阶段实现从 PoW 到 PoS 的切换。这将通过新引入的难度调整计划来处理,该计划在未来16个月内将平稳地保证硬分叉点……它的工作原理如下:从20万的区块高度(时间约为2015年8月下旬)开始,挖矿难度将开始经历指数型增长,大约一年后,难度会明显增加。到那个时候(大概就是宁静里程碑发布时),挖矿难度的大幅增加将使出块时间变长。”

为何 PoW 转换成 PoS 需要难度炸弹来过渡?明白了这个问题就能理清难度炸弹和 ETH2.0 的先后顺序。首先我们需要接受一个事实,ETH2.0 完成后 PoW 将退出历史舞台,不存在两种共识共存的情况,这在吴说过往的中也分析过,且 ETH2.0 合并阶段的完成就是 PoW 挖矿方式的终结

对此,庞大的矿工社区存在一种声音,企图在以太坊完成 1.0 与 2.0 合并后实行分叉。这对于整个以太坊社区无疑将是个双输的局面,因此开发团队需要想办法防止此类事件发生。我们知道,由于 Vitalik 的存在,以太坊开发团队是比较容易统一战线的;而矿工团队则不然,去中心化导致全体矿工无法形成一个利益共同体。换言之,只要能让矿工之间互相不信任,那么矿工将不具备足够的算力来实现51%攻击。

难度炸弹便是一个能让矿工产生不信任的阳谋。根据 Stephan Tual 的预估,难度炸弹开启后以太坊需要大约一年的时间(实际时间或许比这更短,后文会细数历次难度炸弹开启后实行的时间)才能上升到一个几乎无法挖出区块的难度。这意味着,从开启到矿工入不敷出,当中至少有几个月的时间,而这段时间正是瓦解矿工阵营的时候。

考虑到区块高度越高,实现分叉的难度就越大,矿工不能等到完全没有产出了才开始分叉,而是应该在难度炸弹开启的第一时间就开始行动。然而试想一下,作为一个理性的矿工个体,你会在难度炸弹开启的时候尝试分叉主链吗?事实上你会担心:如果有个别矿工没有齐心协力地分叉,而是在原最长链上继续挖,那么他们的产出将会大幅上升,甚至超过难度炸弹造成的损失,一旦分叉失败,这些“背叛”的矿工会赚的盆满钵满,而“团结”的矿工却竹篮打水。因此,理性的矿工会选择沿着主链继续挖(或者选择以合理的退出价格离场),即使知道最终的结果是产出为零,也没人愿意带头冒险。

理解了难度炸弹的意义我们自然就能明白其开启时间与 ETH2.0 合并时间的先后顺序。如前文所述,难度炸弹的存在就是为了在以太坊 1.0 与 2.0 合并时不要发生矿工集体分叉的局面,因此如果以太坊已经顺利完成了合并,那么难度炸弹也就没有存在的意义了。之所以便是基于这个逻辑。

难度炸弹开启后,以太坊合并必须在两三个月内完成,如果完成不了,团队只能选择暂停并推迟,这在历史上发生过三次。

 2   历次推迟难度炸弹的EIPs

历史上难度炸弹曾三度开启过,又四度被推迟了,四次推迟分别发生在拜占庭升级、君士坦丁堡升级、缪尔冰川升级和刚结束的伦敦升级。

图片

图片

上图为历史上以太坊出块时间的变化,可以看到正常情况下出块时间维持在13-14秒,但出现过三次急剧上升的情况,这三次正是难度炸弹开启的时候。每次开启后,出块时间都会呈现锯齿状上升,这便是因为每挖出10万个区块难度会调整一次。以最初的13秒为例,10万个区块大约耗时15天,而最后一次时间增加到25秒,此时10万个区块需耗时将近一个月,因此锯齿呈现逐渐变宽的趋势。三次难度炸弹最终都被暂停并推迟,原因就是以太坊开发团队还没做好完全转向 PoS 的准备,而 PoW 模式下区块难度的上升会导致交易等待时间和叔块概率的增加,从而降低以太坊的实用性与安全性。

第一次推迟难度炸弹

2017年3月,区块高度达到370万,难度炸弹第一次开启,出块时间迅速上升,期间经过6次难度调整,直至10月被延长至30秒。此时,若不尽快停止难度炸弹,将严重影响以太坊生态。经过开发团队讨论后,以太坊在区块高度437万处启动硬分叉——拜占庭升级,在升级版本中包含了 EIP-649 提案,该提案通过把当前的区块高度减去300万作为公式中使用的伪区块高度,以此来延缓难度炸弹的启动时间。

此时的真实区块高度是437万,但用来启动难度炸弹的伪区块高度是137万(437-300)。简单计算可以得出,当伪区块高度再次达到370万,也就是233万(370-137)个区块后——即真实区块高度达到670万(437+233),难度炸弹会再次开启。

第二次推迟难度炸弹

2019年1月15日,以太坊君士坦丁堡升级协调员 Afri Schodeon 发现以太坊的难度炸弹已经在670万高度的区块如期启动,并在大约 700 万高度的区块发生了“爆炸”。第二日,以太坊核心开发成员 Eric Conner(即推出 EIP-1559 的开发者)在推特上指出,难度炸弹爆炸后,平均出块时间已经从14秒升至15.5秒,并且会加速提升。

2月中,以太坊出块时间上升至20秒,问题又一次摆在以太坊开发者面前,唯一的办法还是分叉升级处理掉难度炸弹的影响。2月28日,君士坦丁堡升级在区块高度为728万处完成分叉,难度炸弹危机被再一次被暂时解除。君士坦丁堡升级中包含的 EIP-1234 不仅仅将难度炸弹推迟,还有一项重要的改变就是将出块奖励减少为2个 ETH。此次推迟爆炸的方法和拜占庭升级一样,即简单地将难度因子中的伪区块高度减少500万。调整后,真实高度为728万,伪高度为228万(728-500),抖客网,当伪高度回到370万,即真实高度达到870万(370-228+728),难度炸弹将再次开启。这次只需再经过142万个区块,因此时间较前一次更短。

第三次推迟难度炸弹

原标题:【详解以太坊难度炸弹 第五次推迟 意味着POW终结可能再次延后
内容摘要:8月20日, 以太坊 核心开发者 Tim Beiko 在开发团队电话会议的内容回顾上表示,可能推迟12月的难度炸弹,但在合并前不会有新的 EIP。细数下来,这有可能是难度炸弹第五次被推迟。为何难度 ...
文章网址:https://www.doukela.com/zmt/6532.html;
免责声明:抖客网转载此文目的在于传递更多信息,不代表本网的观点和立场。文章内容仅供参考,不构成投资建议。如果您发现网站上有侵犯您的知识产权的作品,请与我们取得联系,我们会及时修改或删除。
上一篇:陷入悖论怪圈的 NFT
下一篇:当 NFT 碎片化之后有多疯狂?一张狗子图像5天升值4000倍!