江卓尔:比特币难度调整机制如不优化或将导致其猝死?
白话区块链
从入门到精通,看我就够了!
导读:据近期比特币矿池显示的数据,预计比特币挖矿难度将会在14天内再下降16%,这可能是继上一个比特币难度周期之后,全网再一次出现挖矿难度下降两位数百分比。下文是微博大V、BCH阵营的江卓尔对比特币挖矿现状以及“挖矿难度调整算法”是否需要优化做出的分析。
比特币是一个由人开发的软件系统,而不是由神创造的神器,这就意味着,比特币并非尽善尽美,开发人员需要持续性地改进比特币。
实际上,任何一个程序员去看0.1版的比特币,都会得出一样的结论:这是一个不管从代码层面,还是从实现层面,都相当粗糙的版本。比特币现有的生态和规模,是这10年大批开发人员持续改进比特币的结果。
下面,我们以“挖矿难度调整算法”为例,来谈比特币的进化。
01
什么是 “挖矿难度调整算法”?
比特币平均出块时间为10分钟,这个10分钟,就是通过 “挖矿难度调整算法(Mining Difficulty Adjust Algorithm)” 来调节的。
比特币的区块链系统,并不知道目前有多少矿工(算力)在挖矿,只能通过挖出块的速度来推测有多少矿工在挖矿。如果出块比预计快了(一段时间内,平均出块时间小于10分钟),那就说明算力多了,要增加挖矿难度,降低矿工的出块速度。
02
比特币 “挖矿难度调整算法” 的不足
随着比特币的发展,也出现了大量分叉比特币代码的竞争币,不同币的挖矿收益有高有低,矿工并不会固定挖某一个币,而是会在所有币中选择收益最高的,不断切换着挖(跳矿),乃至出现了专门以跳矿挖为盈利方式的矿池——机枪池。莱比特矿池就是当时发展起来的著名机枪池。
这些币一开始都直接继承了比特币的 “挖矿难度调整算法”。然后,问题就出来了:中本聪在写 “挖矿难度调整算法” 时,并没有考虑到多个币在同一算法中并存,然后矿工在不同币之间跳矿的情况。比特币难度调整周期是每2016个块(约14天)一次,这个14天的周期太长了。
下面,用一张图来解释问题:
矿工按照 “挖最赚钱币” 的原则,不断地在低难度周期大量涌入挖矿,在高难度周期撤出挖矿,形成 “算力闪击”。这导致难度调整算法误判算力,再进一步把挖矿难度调到超级低 / 超级高的位置。直到某个高难度周期实在亏损太多,这时哪怕是最迟钝的矿工也会撤出不挖,这个币就死掉了。
03
改进的 “逐块难度调整算法”
为了解决这个问题,竞争币改进了原来比特币的14天难度调整算法,把难度调整周期从14天,改成每块都调整,长时间不出块,则挖矿难度自动下降,保证不会出现长时间没人挖的情况。
而机枪池,则像冰川期的自然环境一样,把所有没升级为“逐块难度调整” 的竞争币(不是已经荒废没人维护,就是技术水平不够)通通扫射死,从而完成竞争币的淘汰和升级。
“生存是最终的辩论方式”。没有升级的竞争币死掉了,所以它们是错的,所以 “逐块难度调整” 是对的。
04
从难度调整算法,反思比特币的设计
通过比特币14天难度调整算法的缺陷和改进,相信大家能理解文章开头的这句话:
比特币是一个由人开发的软件系统,而不是由神创造的神器。这就意味着,比特币并非尽善尽美,开发人员需要持续性地改进比特币。
在所有不改进的竞争币死掉后,比特币也应该改进为逐块调整,这样会更健壮、更强大。虽然绝大部分SHA256算力还在挖BTC,不改看起来好像也可以,但这并不意味着没有隐患,例如:
▪BCH分叉后的 “算力闪击”
在BCH刚分叉时,BCH的逐块难度调整算法EDA存在缺陷,导致出现了SHA256算法史上第一次大规模跳矿:算力在BTC和BCH之间大规模转移。每当大量算力因为挖BCH收益高而去挖BCH时,BTC的算力就大幅降低。
“算力下降30%”等于“出块速度下降30%”,由于BTC被Core锁死1M区块大小,意味着区块容量从 “10分钟1M” 变成 “10分钟0.7M”,这大大加剧了BTC的拥堵程度。直到BCH改用更稳定的DDA难度调整算法后,BTC受到的 “算力闪击” 才告一段落。
▪BCH翻盘时的 “算力死亡螺旋”
如果发生BCH价格短时间巨幅上涨,甚至接近BTC价格的情况,BTC算力会大量转移到BCH上,导致BCH进入 “算力死亡螺旋”:算力减少→出块变慢→拥堵加剧→市场进一步恐慌→价格进一步下跌→算力进一步减少,并加速BCH的翻盘。
BCH可能在短时间内,就借助BTC14天难度调整的缺陷,一步完成翻盘,BTC无人愿意亏损挖高难度块,短时间内猝死,很多人甚至连币都转不到交易所,来不及逃命,直接陪葬。
▪熊市矿工反复开关机的 “机枪池效应”
BTC最近的大跌,导致历史上首次出现 “主力矿机不够电费关机” 的情况。目前,大部分算力的矿机都是蚂蚁S9和神马A8。当币价跌到2.6万时,已击穿蚂蚁S9和神马A8的电费成本。现在,已经有大量蚂蚁S9和神马A8停机,BTC的挖矿难度大幅下降。
而到了下一周期,由于挖矿难度大幅下降,挖矿收益提升,暂时停机的矿机又将开机,然后到下一周期再关机。如此大量的矿机反复开关机,形成了类似机枪池扫射的效果,将会导致BTC的难度波动越来越剧烈,出块越来越不稳定。
05
外界环境必然变化,导致内部必须进化
比特币14天难度调整算法的问题,引向一个更深入的问题:CSW的 “稳定论”,甚至 “锁死比特币0.1版” 对吗?
难度调整算法是个很好的例子。一开始BTC的14天难度调整并不是缺陷,但当外界环境变化后(同算法竞争币的兴起,大跌导致的关机潮),这却变成了缺陷。
外界环境永远在变,在变化的环境中,指望内部不变,规则不改,躺赢成为世界货币,无异于痴人说梦。
在快速发展、新技术层出不穷的数字货币市场,只有那些主动适应市场变化,主动根据市场变化改进自己的币,才能达到最高效率,获得最快发展,并战胜那些被动的、“尽量不改” 的币,成为世界货币。
在这点上,我们也可以尝试做到“猫论”“摸论”“不争论”:
猫论:不管黑猫白猫,能捉老鼠的就是好猫。
摸论:摸着石头过河。
不争论:不搞争论,大胆地试,大胆地闯。
06
总结
比特币是一个由人开发的软件系统,而不是由神创造的神器。0.1版的比特币,是一个不管从代码层面,还是从实现层面,都相当粗糙的版本。
14天的难度调整,是BTC的一个缺陷,甚至有可能导致BTC的猝死。BCH的DDA逐块难度调整算法,修补了比特币的缺陷,是更为优秀的进化。外界环境永远在变,内部必须主动进化,才能达到最高效率,获得最快发展。
你认同江卓尔对比特币挖矿现状的分析与论断吗?快来留言区分享交流吧。
相关/热文
——End——
『声明:本文转载自江卓尔的微博,为作者独立观点,不代表白话区块链立场,亦不构成任何投资意见或建议。』
亲,给「白话区块链」加个“星标”
👇 不错过重要推送哦 👇
亲,您点个