COIN:内存池 Bug 导致 BCH 出现空交易区块,P网已暂停 BCHABC 交易_pixiecoin

Odaily星球日报译者|Moni比特币现金是目前全球排名第四的加密货币,市值超过60亿美元,之前的全系统范围升级已经将比特币现金网络分成了两部分——但是现在,问题来了。一位来自Reddit论坛用户透露,由比特币现金开发者团队开发的软件版本——BitcoinABC中出现了一个代码Bug,该Bug很快影响到了与升级本身无关的比特币现金内存池。根据BitMEXResearch的Forkmonitor工具披露的数据显示,就在比特币现金网络在第582,679区块尝试升级到新软件之后,发生了一次区块链分裂。与比特币区块链类似,比特币现金也要求矿工验证交易之后才能将新区块添加到区块链上,内存池里通常包含了等待矿工批准的比特币现金区块链上的所有待处理交易。Reddit论坛用户“FerriestaPatronum”解释说:“看起来,就在比特币现金硬分叉之后,内存池接受规则中出现了一个小Bug……从我目前的理解,这个问题可能是操作计数Bug,他们依然使用的是旧规则去验证操作计数,而不是按照新规则来验证的。”就在该漏洞出现之后,比特币现金开发人员很快发布了修复Bug的新代码,根据CoinDance的数据和业内人士披露的信息显示,在这个Bug修复之前,比特币现金区块链产生了一串空交易区块。VinArmani是比特币现金应用程序CoinText首席技术官,他表示:“大约在一个半小时之后,区块被清空了。现在内存池没问题了,而且交易也可以像以前那样进入区块,一起都恢复正常。”不过截至本文撰写时,我们仍然不清楚有多少节点已经升级了修复Bug的软件。为了修复这个问题,加密货币交易所Poloniex已经宣布将暂停BitcoinABC提款和存款交易,该交易所在Twitter上发文称:“比特币现金今天计划的硬分叉有问题,因此我们将禁止BCHABC的存款和取款交易,直到另行通知为止。比特币现金的核心开发人员正在努力解决问题,感谢您的耐心等待。”还是中心化问题惹的祸?

根据挖矿及矿池运营区块链初创公司Navier研发团队透露,目前大多数比特币现金矿工使用的都是BitcoinABC软件,而不是像BitcoinUnlimited(BU)这样的其他比特币现金软件。Navier副总裁DavidSteinberg解释说:“大多数比特币现金矿工使用的都是BitcoinABC客户端,而不是BitcoinUnlimited,所以人们创建交易并将这些交易提交给内存池的速度比他们写入一个区块的速度更快,这导致大部分区块都是空的。”DavidSteinberg同时强调,如果矿工可以尝试使用不同的节点软件,那么就可以有效防止因为代码出现Bug而导致区块链网络瘫痪的问题,他补充说道:“拥有单一类型的节点是一种中心化的形式——你可以从自己选择的节点类型中信任代码库,以保持按预期工作。理想状况下,矿工其实可以尝试选择不同类型的节点软件,防止类似这次Bug事件再次发生。”DavidSteinberg认为,在硬分叉期间使用一些特别受欢迎的软件,其实是一件比较危险的事情。他最后总结说道:“事实上,这个Bug出现的时间恰逢硬分叉,结果加剧了问题的严重性,因为通常来说,你必须要升级节点软件才能参与分叉。对于正常的增量升级,并不是每个节点都会及时进行软件更新,因此如果你尝试使用不同的节点软件,那么这种问题可能只会影响到少数矿工。我认为这里最大的问题是程序员也会犯错,而且就算是去中心化系统,假设某个环节存在中心化问题——比如依赖单一的代码库,也会因为一个Bug导致网络受到影响。”

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

区块博客

[0:15ms0-4:474ms