从技术角度看BCH分叉升级

提起BCH分叉升级,让大家印象最为深刻的,可能只有去年11月份引发圈内“大地震”的硬分叉大战。然而,大家都忽略了一个现实:BCH分叉升级其实是漫长技术迭代的“马拉松”。

2019年3月初,BCH开发团队公布消息,BCH将在5月份开展网络升级,这也是BCH诞生以来的第四次升级。可盈可乐研究院分析师Nancy从BCH分叉升级事件出发,追溯BCH技术演进过程,希望能从技术的角度来评估BCH技术研究和发展方向。

BCH因扩容之争而诞生

BCH(Bitcoin Cash)有另一个称号,叫“比特币之子”。它诞生于比特币扩容之争。由于持续加剧的网络拥堵、手续费高昂,使得比特币扩容争议长达数年,在2017年市场行情飙涨之时,更是将争议推到高点。

当时, BCH创造者认为“由于手续费飙涨,一些用户在长达数天之后都无法得到交易确认,比特币变得不再可靠”。在社区多次争论无果之后,BCH创造者第一次将BCH从比特币中分叉出来。

BCH不仅得到算力排行前五的矿池支持,在技术方面由BitcoinABCBitcoinUnlimited、BitcoinXT等多个团队共同开发维护。2017年8月1日,第一个Bitcoin Cash区块诞生,由坚定的大区块支持者杨海波创立ViaBTC在区块478559挖出第一个BCH。

BCH虽然延续了比特币正宗血统,但将区块大小限制从1M提升至8M。而且对BCH挖矿难度进行调整,在BCH挖矿规则中采用紧急难度调整机制(EDA),即当BCH网络出块在12小时内小于6块时,难度值就会下降20%。当时的设想是,当难度下降到一定程度后,挖BCH的利润就会高于BCH,将会有大量矿工直接从BTC切换到BCH挖矿,而当大量算力涌入时,BCH挖矿难度就会增加,BCH挖矿利润又会低于BTC,形成这种来回交替循环。在新规则下,BCH进入矿工和投资者的视野中。

BCH的第一次升级:EDA调整为DAA

2017年11月14日,BCH发生第一次升级,主要是进行挖矿难度算法的调整,将EDA调整为DAA。

主要原因在于EDA运行一段时间后,导致BCH出块混乱。出块难度下降,大量算力切换到BCH导致拥堵更加严重;算力不足时候,1个小时都无法出块,使得用户体验非常不稳定。于是,BCH区块链的难度调整算法变为DAA。目的在于让出块时间趋于10分钟,让难度调整更平衡地追踪算力的变化,使得出块速度变得平稳。

BCH第二次升级:优化功能

2018年5月15日,BCH进行第二次升级,侧重于完善功能。具体来说主要从三方面进行优化:

  • 调整区块大小,区块由8MB提升至32MB。增大区块后,每隔10分钟将接收一个32MB的脉冲信号,这意味着普通电脑的网络带宽压力进一步提升。
  • 重启代码,激活了此前比特币被禁用的脚本操作码(op-code)。op-code是中本聪创造的,这段代码的作用是标记交易或无效交易。重启code计划之后,BCH可以是实现更多应用,侧链、闪电网络、智能合约功能都可以用上,这也为BCH成为支付货币打下基础。
  • 扩充容量,将OP_RETURN字段增加到220字节。

得益于这次升级,BCH拥有了诸多应用程序和智能合约方案。

BCH 第三次升级:一场算力大战

发生于2018年11月15日的BCH硬分叉升级外界称为“神仙打仗”,也导致众多持有者“遭殃”。

这次升级之所以引起关注,是因为社群内出现争论。比特大陆主导的Bitcoin ABC开发团队认为BCH应该向基础建设公链方向发展,开拓更多应用场景;而CSW主导的Bitcoin SV 社群阵营,则希望将区块扩容为128MB。由此而引发了一场算力大战。

然而,从技术角度最后也成功地实现了升级,BCHABC实现的升级的内容主要有:对区块内交易增加规范交易排序(CTOR),增加OP_CHECKDATASIG和OP_CHECKDATASIGVERIFY两个操作码,实施最小交易规模,为scriptSig强制执行“仅推送“规则、实施“清洁堆栈”规则等。从比特大陆主导ABC阵营的主张可以看出重点致力于将BCH向公链方向发展,以及更多应用场景。

时间来到第四次BCH网络升级

根据BCH开发团队的公告,测试网Bitcoin ABC .19.0版本已经在官网公开,预计在2019年5月15日开始正式激活升级。这次升级主要增加两个新功能:Schnorr签名和隔离见证复原(Segwit recovery)。

Schnorr优势之一是多重签名聚合,节约存储带宽资源。而且,Schnorr签名跟不同协议的结合有助于隐私保护,提高安全性。这次升级应用Schnorr前面,将让BCH在签名技术上占据领先优势。

另外,针对意外打到隔离见证P2SH地址的币,这次升级将对这些币进行豁免,将这些币恢复到旧的可使用状态。BCH技术优化升级不再局限于扩容,而是在优化BCH功能方面向前跨上一步,这也意味着BCH正在朝着公链和应用的方向前进。

从技术角度梳理解读BCH升级过程,可以发现BCH网络每年升级两次,已经成为社区的共识,而且BCH在一次次升级中变得更加强大起来。

发表评论

电子邮件地址不会被公开。 必填项已用*标注