Bitcoin ABC vs. NChain,比特币现金升级究竟在吵什么?
编者按:本文来自36氪战略合作区块链媒体“Odaily星球日报”(公众号ID:o-daily,APP下载)
在过去的几周时间里,对于即将在 11 月 15 日进行的硬分叉,比特币现金社区展开了激烈的讨论。实际上,大多数比特币现金支持者们都明白,如今的社区已经被“分裂”成了具有截然不同愿景的两大阵营,而且短期内他们之间也肯定不会彼此妥协。
现在距离硬分叉还有不到两个月时间,不妨就让我们来看看这两派目前究竟在争论些什么吧。
11 月 15 日的升级“两大阵营”仍在争论不休
2018 年 11 月 15 日,比特币现金网络将会进行升级。然而让人意想不到的是,围绕本次升级出现了巨大的争议,其中最核心的矛盾点在于硬分叉之后将会加入哪些新功能。目前,整个比特币现金社区已经形成了持不同意见的两大阵营:
第一个阵营是 Bitcoin ABC 开发团队及其客户端的支持者,他们希望添加一个名为OP_CHECKDATASIGVERIFY(DSV)的操作码,旨在改进比特币现金脚本,遵循交易规范排序规则(CTOR),并且进行一些小的技术修复和改进;
第二个阵营是 Nchain 开发团队、及其客户端 Bitcoin SV 的支持者(注:Bitcoin SV 是知名区块链公司NChain 推出的全新比特币现金节点软件,其中 SV 是中本聪愿景的缩写),他们想要一套完全不同的功能。Bitcoin SV 希望将区块大小增加到 128MB,并且添加 OP_MUL,OP_LSHIFT,OP_RSHIFT,OP_INVERT操作码,同时还要求删除每个脚本 201 操作码的限制。
事实上,最直言不讳反对 Bitcoin ABC 的人当属 NChain 首席科学家、自称为“中本聪”本人的克雷格•怀特(Craig Wright)。之后,许多支持 Bitcoin SV 及其区块链想法的人也开始加入到“反Bitcoin ABC”阵容之中,包括知名加密货币挖矿公司Coingeek。最近,NChain 宣布推出其 Alpha 版本代码库,并且启动了 Bitcoin SV 矿池,以便让人们直接将哈希率算力发送到客户端。值得一提的是,在 9 月 18 日之前的七天时间里,加密货币矿池 Coingeek 和BMG Pool(NChain 的矿池)已经占到了全球比特币现金挖矿算力的 46.2%。
在过去的七天里,BMG Pool(Nchain)和Coingeek控制着全球46.2%的比特币现金挖矿算力。
是否采用交易规范排序规则颇有争议
Bitcoin ABC和NChain两个阵营在是否支持交易规范排序规则问题上也存在不小的分歧。比特币现金区块目前使用的是拓扑交易排序(TTOR:Topological Transaction Ordering),这是一种零散排序的“松散(loose)”形式。交易规范排序提案旨在改变区块内交易的顺序,其中第一个交易是一个 Coinbase 交易(Coinbase Transaction),其余的交易则会在交易ID的帮助下按字母顺序排序来处理。
在 Bitcoin ABC 看来,交易规范排序比拓扑交易排序优势更大。 Electron Cash 开发人员乔纳德•费约克鲍尔(Jonald Fyookball)此前曾发文盛赞比特币现金协议中加入交易规范排序规则的好处,而另一位开发人员马克•布伦德伯格(Mark Blundeberg)也对交易规范排序进行了全面的技术分析。此外,比特币矿工乔纳森•托姆(Jonathan Toomim)还补充了一些源于比特币现金压力测试的区块传播数据(如下图所示),他解释说:
“在压力测试期间,区块通过中国外的主网 传播的速度大约是300–1000 kB/s。这是很慢的,如果区块频频大于8MB就会引发像孤块率这样的问题,除非我们改进区块传播算法。”
另一方面,比特币无限首席开发人员安德鲁•斯通(Andrew Stone)表示,交易规范排序的分片提议既不需要“交易规范排序”,也不能解决基于代币激励机制的可扩展问题,因此如果想要进行网络优化,根本不需要实施交易规范排序。 不仅如此,实施交易规范排序也存在很大风险,因为它需要在没有证明具体优势的前提下达成高度共识。NChain 团队因此指出,由于交易规范排序提案的示范不够充分,所以目前并不会在比特币现金区块链上实施。
对于操作码“CHECKDATASIGVERIFY(DSV)”利弊的争议
Bitcoin ABC 在其比特币现金升级方案中提出的添加“OP_CHECKDATASIGVERIFY(DSV)”操作码引起了巨大争议,根据比特币无限(Bitcoin Unlimited)的解释,该操作码允许脚本验证任意数据的签名,其采用了与ECDSA算法(以及代码)相同的方式,即比特币交易签名的验证方式。因此,这个操作码有助于外部‘预言机’的使用,方便了外部信息输入交易。
NChain首席科学家克雷格•怀特认为,部署DSV操作码会引发很多问题,他曾在八月初在推特上公开表示:
“OP_CHECKDATASIGVERIFY不会发生,如果某一个Bitcoin ABC开发人员要推动它,那么我们将找人取代这个开发者。相信我,还有其他人能够胜任。”
接着,Nchain 的高级研究员欧文•沃恩(Owen Vaughan)也发表了一篇文章《比特币现金的Rabin签名》,指出比特币现金脚本中可以直接签署和验证任意消息,而无需引入新的操作码。
然而,在另一阵营中却有完全不同的看法。马克•布伦德伯格还写了一篇题为《Pay To Identity:一个OP_CHECKDATASIG应用方案》的文章,全面展示了DSV的好处;还有一位比特币现金社区成员Perica在Yours.org发文称,DSV早就已经在代码库里,并且从比特币0.1版本发布以来就一直在代码库里(如下图所示)。Perica在文里表示,DSV模式已经写入原代码,而且比其他任何一个开发团队的提案更强大。
还有不到两个月时间,任何事情都有可能发生
比特币现金硬分叉将会在今年十一月发生,但你似乎很难相信,在仅剩不到两个月的时间里,仍然有很多问题需要讨论。不仅如此,目前两大阵营对自己的想法都非常坚定,似乎冲突有可能会进一步升级。
当然,你也可以选择中立,运行Bitcoin XT或是比特币无限(Bitcoin Unlimited)的客户端,这些团队通常会跟在“拥有最大算力”的阵营后面。
除了前文提到的几个主要问题之外,比特币现金社区还有很多其他争议问题,比如:
1、究竟是否需要使用128MB的区块;
2、比特币现金区块链是否有必要现在就升级到128MB的区块大小;
3、尽管压力测试表现出色,但引入超过8MB的区块仍然会出现一些问题;
4、有人认为比特币现金网络可以处理超大区块,也有人认为应该完全消除区块大小限制。
所以,千万不要以为比特币现金升级会一帆风顺,因为在没有正式执行硬分叉之前,任何事情都有可能发生,而我们现在所能做的,似乎只有耐心等待了。















