如果你对加密货币感兴趣,那你可能听说过一种说法叫做分叉,也看过很多分叉,那么什么是分叉呢?别急!要了解什么是分叉,你首先需要先了解区块链是怎么工作的!
以比特币为例,比特币是一种数字货币,这就意味着它是一种软件实现,就是比特币协议,它确立了每个想使用比特币的人必须遵守的规则,包括区块大小,矿工奖励,交易费用计算方式等等。
但就像所有的软件项目一样,比特币的开发也是需要不断迭代完善的,比特币的开发者会定期发布更新来解决问题或者提高性能,有些更新改变很小,但有些会从根本上改变比特币的工作方式,所以有时会有一部分的开发者不同意比特币的发展方向。另外呢,矿工也可能会不同意,因为比特币协议的更新可能会减少他们的利润。
那么,如果一群人非常不满意,他们可能会选择走自己的路,创建他们自己中意版本进而分叉区块链,如果他们这样做了,会发生什么呢?
我们可以把比特币看成两部分,比特币协议和存储所有交易的区块链,如果要分叉比特币,首先,要复制比特币协议代码并进行修改,这是完全可行的,因为比特币代码是开源的。在完成他们想要的更改后,确定一个时间点,他们的分叉将正式上线,通常是通过一个区块号来完成。比如说,你可以说你的分叉将在块号480,000时发生,那么当达到这个块号的时候,社区将会被分成两个部分,有人支持原始协议,而其他人希望支持分叉协议,然后每个组会开始将新的区块添加到他们所支持的版本的区块链上,从这点上开始,两个区块将互不兼容。因为分叉是基于原始区块链的,因此,所有原始链上的交易,也会在分叉链上有记录,也就意味着,如果你在分叉前拥有一部分数字货币,那么你也应该能得到等量的新币种。一些人称之为免费糖果,但这要看新的分叉是否具有足够的吸引力。
已经发生过不少比特币的硬分叉,2017年8月1日,由于开发人员无法对区块大小达成一致,有人希望扩容到2M,但也有人希望扩容到更大,当无法达成一致时,两个团队决定走自己的路。有些比特币的硬分叉已经相对比较成功。此外呢,以太坊和以太坊经典也是一个典型的硬分叉。
有硬分叉,相对的就有软分叉,区别在哪里呢,当分叉和原始版本不兼容时,那么发生的就是硬分叉,反之,如果分叉与旧的版本兼容,那么,就是软分叉。
「自由码客:程序员区块链社区www.codingfly.com」