区块链分叉如何解决_合久必分?区块链分叉的不可避免性
分叉(fork),或是分叉的威胁,似乎是加密货币领域的公认特征。但分叉是什么?为什么分叉会有这么大的影响?硬分叉与软分叉的差异在哪?下面我们一起聊聊。分叉是如何发生的?比特币作为一个软件项目,它总有需要完善的地方,所以它的开发永远都在进行,比特币开发者是通过更新软件(比特币协议)来解决问题或增强功能的。在中心化系统中,软件升级十分简单,但是在去中心化系统中,升级并没有那么简单,它需要达...
分叉(fork),或是分叉的威胁,似乎是加密货币领域的公认特征。但分叉是什么?为什么分叉会有这么大的影响?硬分叉与软分叉的差异在哪?
下面我们一起聊聊。
分叉是如何发生的?
比特币作为一个软件项目,它总有需要完善的地方,所以它的开发永远都在进行,比特币开发者是通过更新软件(比特币协议)来解决问题或增强功能的。
在中心化系统中,软件升级十分简单,但是在去中心化系统中,升级并没有那么简单,它需要达成共识(取得各方的同意)。
在涉及到一些重大更新时,社区中总会有人反对,如果一群人都不同意,他们可以选择走自己的路,创造他们自己的比特币协议版本和分支区块链,于是分叉也就发生了。
简单来讲,区块链网络在升级时发生了意见分歧,从而可能导致区块链分叉。除了意见分歧外,某些协议的添加、升级,也可能需要通过分叉实现。
硬分叉硬分叉是指比特币共识机制发生改变时,与原生协议不相容,部分没有升级的节点无法验证已经升级的节点产生的区块,然后大家各自延续自己认为正确的链,所以分成了两条链。
在比特币里,需要硬分叉来更改比如区块大小、解决加密难题的难度、新增额外信息之限制等定义参数。任何对这些规则的更改,都可能造成区块被新协议接受但被旧版本拒绝,并可能导致严重问题──甚至有可能造成资金的损失。
唯一的解决方法是放弃其中一个分支转而支持某一分支,这涉及一些矿工的损失(交易本身是不会丢失的,它们只会被重新分配)。或者,所有节点都需要在同时切换到较新的版本,而这在分散的、广泛传播的系统内是不容易达到的。
或者,比特币会分裂,这已经发生了。(哈啰,比特币现金)

软分叉仍然可以与旧版本一同运行。它是指区块链网络系统版本或协议升级后,与原生协议兼容,旧的节点继续接受由新节点创造的区块,新老节点始终还是在同一条链上工作,并没有新链产生。
举例来说,假如以限缩规则的方法更改协议,实现表层修改或添加不影响结构的功能,则旧版本的区块将能接受新版本区块。但反过来则行不通:新的、较为严格的版本将拒绝旧版本的区块。
在区块链中,理想状态下,矿工发现它们的区块被拒绝,就会自行升级。随着越来越多矿工完成升级动作后,拥有主要新区块协议的链会变得越来越长,会更加孤立旧版本的区块,这又能让更多矿工进行升级动作,并且系统会自动纠正。由于旧的和更新后的节点都接受新区块,因此新版本的区块协议最终将获胜。
软分叉与硬分叉最大的区别就是有没有新链产生,硬分叉是有新链产生的,而软分叉并没有产生新的链。
分叉有什么影响?对于数字货币持有者来说,硬分叉会让他们额外增加一笔财富(分叉链 Token)。BTC 的持有者就曾经获得过许多不同的 BTC 分叉链 Token。
区块链作为一个复杂的去中心化系统,社区的意见难免会出现较大的分歧,出现分歧后是各自退让还是各自独立,众说纷纭。分叉或许是无法避免的解决方案。

往期精彩内容



欢迎扫码关注
东方区块链俱乐部!
!
更多推荐




所有评论(0)