学习
实践
活动
专区
工具
TVP
写文章

日益临近的BCH分叉之争,老矿工是怎么看待的

按原计划,BCH将于2018年11月15日实现第三次硬分叉升级,但关于升级方案,社区出现了严重分歧,算力战一触即发。

BCH为什么要硬分叉?此次硬分叉会升级哪些规则?算力战又会怎么打?将给社区用户带来什么影响?

11月 1 日晚,一位2011年的老矿工,在猎云财经空中课堂就上述问题分享了自己的看法,以下为此次分享的精选内容:

01

硬分叉与软分叉

讲到分叉,很多人可能搞不清楚,分叉简单来说有两种,软分叉和硬分叉。

硬分叉就是说在原有的区块链技术上,重新做一个区块链,新的链会保留一定原有链的技术基础,但是两条链是完全不同的链。在新共识规则发生后,部分没有升级的节点无法验证已经升级的节点产生的区块,通常硬分叉就会发生。

软分叉,就是在原有的区块链技术上进行“修补”,收紧规则,以前允许的规则,在升级之后不允许。矿工间达成共识后为其升级。

人与人之间天生存在分歧,要想达到共识那需要不断的磨合,而要想一个去中心化系统永不分叉,就好像你要一对夫妇永远不吵架一样可笑。

随着比特币现金开发人员在技术上的一个又一个分歧,这个统一战线逐渐出现了一些裂痕。Bitcoin ABC开发者和nChain开发者因11月的BCH升级产生了分歧,甚至可能会出现算力战。其实无论是比特币还是比特币现金其实一直处在分叉风险当中,每次出块都有可能分叉,毕竟比特币现金(Bitcoin Cash, BCH)也是在2017年8月1日的时候从比特币成功硬分叉而来。

比特币现金的硬分叉,就是1. 把区块容量上限调整为八兆;2. 添加了防重放攻击的 Forkid;3. 删除了 Segwit 隔离见证;4. 修改了难度计算共识,改为 EDA,紧急难度调整。

一般来说当矿工间达成共识,没有异议的时候,硬分叉不会发生。就比如比特币现金5月的协议升级,绝大多数算力都前往新的共识规则下,把上限从 8M 提升到 32M。

当每个区块实际容量变的越来越大时,在比特币客户端,则需要同步大量的数据,这对存储空间的要求会越来越高;区块产生后需要向其他节点传播,区块容量变大,传播效率降低,可能会导致全网孤块率和空块率大幅上升。

而且因为经济激励导致坚持分叉没有收益,所以这时候出现的孤块,不被系统所承认。当然这个和比特币的投票的特性是相关的。当矿工挖出新区块时,该节点通过选择扩展哪条链来投票。比如Rawpool错过了升级的事情,一直在小链上出块,损失了 5 个块的收入。

但随着网络处理能力的逐步提升,我们的区块处理能力,是随着逐渐提升的。最终,将可以承载所有的交易。

比特币上的转账交易,是一笔400字节大小的交易,在全网广播一次(目前是两次,可以优化)。这个事情的成本,是会随着技术的进步逐渐下降的。因此,交易手续费必然逐渐下降。而每笔交易都为自己付费的前提下,肯定可以容纳无限多的交易。

02

比特币的挖矿竞争

下面说一下在这个基础上引入的比特币挖矿竞争。

其实挖矿这个词可能让一部分人误解了比特币矿工,矿工的工作主要是验证交易和打包区块,而得到的比特币奖励和手续费是一种激励手段和“副产品”。最早的挖矿从争夺记账权,到解决哪个账本更可信,再到引入竞争机制,让私自挖矿变得不可行(也不是不可行,就是一个人挖矿力量终归小),再之后到矿工在竞争的是否是一个零的博弈过程。

比特币挖矿是矿工用算力进行投票选择规则的过程,矿工的投票,应该需要从短期到长期看到对比特币价值的帮助。矿池提供投票方式,矿工用算力进行投票,获得回报。矿工衡量回报的唯一标准是看“拿到什么币作为回报”。

我们不用担心部分矿工故意选择工作量更少的链,因为多数矿工会选择工作量最多的链,而工作量较少的链会被彻底放弃。

而矿池之间的竞争,以后除了会发生在算力层面上外,还会发生在打包能力上。

可以打包更多交易的矿池,可以收到更多的手续费。这些手续费会体现在矿池的收益上。当区块奖励逐渐每四年降低一半的时候,以后的矿工收益将越来越依赖于手续费。

这样,对交易处理能力越强的矿工,可以给矿工更多的回报,会得到越多的算力的支持。

上面我们说到,交易越多,打包的区块越大,可能会提升全网的孤块率。而孤块率的提升,会降低矿池的收益。

这样的制约因素下,矿池也不会随意打包“超级大”的区块,最终会有一个恰好的平衡点,矿工会尽量参与竞争,让自己的交易处理能力应该在全网平均的处理能力之上。为交易的增长做好准备。

这里的“孤块”,就意味着有一个区块不被网络承认,不能做为全网最长链的一部分。但是比特币的区块,只是一个结算层。在交易被私钥签名之后,清算已经完成了。所以在“没有重放攻击”的情况下,交易应该会被包括在所有分叉的区块之中。

所以对于交易来说,只要零确认是安全的,没有出现双花,那么是无惧不同分叉链的。比特币无时不刻处在分叉的风险中,只要不添加防重放攻击,比特币现金将不会分裂。

03

算力战的打法及将给用户带来的影响

这里说到了分叉,我们可以来谈谈重点的,11月份算力战。

关于11月份的比特币现金的算力战,多数用户会关心一个问题,11月的硬分叉升级由于存在两个不同的版本,所以这对很多人以及商家产生了很多困扰。没有人知道怎么具体怎么打,怎么结束,中间又会产生多少问题,这些都不得而知。

按原计划,比特币现金协议将于2018年11月15日实现第三次硬分叉升级,但关于升级方案,以CSW为代表的一方与以BitcoinABC、(比特大陆)为代表的一方出现了严重分歧。这里的分歧就不扩展开来。总的来说两派的分歧如果无法弥合,看起来会在2018年11月15日造成BCH链的永久分叉,即变成两个币和BCH生态的永久分裂。

但是,Dr. Craig Steven Wright, aka CSW,提出了一个自己的方针。BCH只有一个,不会发生分裂,其解决办法是,如果有人在11月15日及之后分叉或者分裂,他将发起Hash war(算力战),以算力杀死任何分叉链,直至对方改算法或投降,这样战争结束后,执行SH256算法的BCH只有一个币、一条链。

或者,如果他输了,他将投降,加入胜利的一方。

CSW更进一步提出,当BCH内部的算力战结束后, 2020年,即比特币的挖矿再次减半之时,BCH将对比特币的另一条链BTC发起Hash War,最终比特币将统一成一个,即BCH,BCH就是比特币,就是符合创始人中本聪愿景的全球点对点电子现金系统(Bitcoin: A Peer to Peer Electronic Cash System)。

但是,在算力战期间,双方可能不仅仅延长自己的区块,更会对对方的区块进行重组攻击,让对方的块成为孤块,进而损失金钱。

白皮书第11节末尾也写道,“假定,一个拿着无限筹码的赌徒,从亏空开始,允许他赌无限次,目标是填补上已有的亏空,那么我们可以计算出他填补上亏空的概率,也就是攻击者能够赶上诚实的概率”,当此情形,算力战取决于战争意志与烧钱能力,设若这双方中有一方类似赌徒,有相当的算力并有持续的烧钱能力或透支能力,则另一方挖出的区块将不断面临被孤立与重组,总有一天,不能承受资源损失的一方将被迫放弃已挖区块而退出战争,另一方获胜。

而矿工的目的应该是攻击对方而非从攻击系统的角度,所以大家放心不会出现双花风险。

最终,工作量证明中,工作量等于使用矿机烧的电费,而累积工作量最大的链上烧掉的电费往往是最多的,因此在竞争算力最长链的过程中,是比较双方烧钱的数量,这可能是一个持续长期的过程。

当然算力战还可能出现一些有趣的结果

1、还允许充值提现的交易所将面临巨大的风险,交易所将成为单机版,不具备参考价值;

2、在进行孤块战、空块战之外的另一条链将能正常运作,你在这条链上挖会有更高的风险(归零哦),但是你能比平时获得更多的币;

3、矿工最终将回归本质,在自己认为最有可能成为的最长链的区块链上挖矿,并同时让自己挖矿的结果尽可能的被其他所有矿工接受。

这时候对于矿工应该如何选择,我个人有几个建议。首先,矿工们可以通过获取BTC回报来避险;其次你们可以通过提供选择的矿池进行投票,选择你们支持的那一方;最后,矿池、交易所的运行风险提升,大家需要尽快把收益提到自己的钱包中。

当然算力战期间BCH可以正常转账,对于一些常规的转账交易,属于双方都兼容的,能够在双方客户端同时出现。所以大家不必担心交易丢失的情况。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181102G0IKTC00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

关注

腾讯云开发者公众号
10元无门槛代金券
洞察腾讯核心技术
剖析业界实践案例
腾讯云开发者公众号二维码

扫码关注腾讯云开发者

领取腾讯云代金券