因为区块链是去中心化的数据结构,所以不同副本之间不能总是保持一致。区块有可能在不同时间到达不同节点,导致节点有不同的区块链全貌。-----《精通比特币》
本文试图以比特币为例来让大家浅层次理解什么是区块链的「分叉」。
一、概念
比特币也需要升级性能、修复系统漏洞、添加新功能。
与你现在用的软件不同,比特币想要完成这些事,需要协调「开发者、矿工、用户」才能达成这个目的:如果不能达成让各方相对满意的「共识」,那就会发生开发者退队/矿工罢工/用户砸盘等现象。
「分叉」是一种技术上的表现形式,也是一种参与者们的「共识」。
二、分类
社区一般将分叉分为两类:硬分叉(Hard fork)和软分叉(Soft fork)。
1.硬分叉
比特币这个系统升级了,一些升级了自己的挖矿软件,但是有一些矿工不选择升级挖矿软件。升级了挖矿软件的矿工和不升级软件的矿工,都不承认对方打包的区块合法性,就会造成了分叉。
如果双方不愿意和解,且都有算力支持,那两条链都会活下来,即除了原链之外,还生成了一条新的区块链,如下图所示。
我们一般将绿色块那个条链上的代币称为分叉币
2.软分叉
比特币的系统升级了,一批矿工升级了自己的挖矿软件,但是剩下的矿工没有升级挖矿软件。但他们还是都互相承认对方打包的区块。
软分叉不同于硬分叉,没有一条新的区块链产生,所以不会有分叉币可以领取。即使一些矿工没有升级软件还是可以继续打包交易,升级的软件也和不升级的软件互相承认对方打包的区块是合法性,那这一条区块链看起来就会像这样子:
软分叉是在原链上进行的,没有一条新区块链产生的,所以不会有分叉币可以领取。
三、「分叉」时候我们需要做些什么?
分叉时候,开发者们需要测试网络以保证不会出现影响整改系统的漏洞。
分叉时候,矿工们需要升级自己的挖矿软件,按照新的规则去打包交易。
分叉时候,imToken 用户期待升级之后更好的网络(更便宜的转账费用和更快的转账速度)是唯一要做的事。
四、只要发生了硬分叉,就可以领取新分叉币吗?
实际上区块链的大多数的硬分叉都属于技术的升级,社区并没有分裂出一条新的链,所以是没有分叉币可以领取。
五、怎么领取比特币的分叉币
如果你是将比特币存放在 imToken 里,根据分叉链团队给出的领取教程进行领取。
如果你是将比特币存在交易所,取决于交易所是否给你分叉币。
六、硬分叉如果产生一条新链,是好是坏?
硬分叉不可避免会带走原链的资源(开发者、算力、用户、关注度)。
比特币出现了必须要解决的问题、社区出现不可调和的分歧,硬分叉是推动发展,解决纷争的手段。
但大多数比特币的分叉币都是借助 BTC 原链的知名度,上线交易所疯狂割向韭菜们的刀子。
七、结束
比特币的分叉本质上是参与者们的共识与分歧 。
比特币的历史和人类历史一样:不断产生分叉,不断解决分歧。
参考资料:《精通比特币》