什么是软分叉(不分叉的软分叉是指在区块链或去中心化网络中向前兼容的分叉)

区块链上节点诸多,在出现新版软件后,不一定所有的节点都愿意升级,也不一定所有的节点都能马上回过神来。节点应对新版软件反应的不同造成的分叉结果也不同。依据升级后的区快链能否适配旧区块链,分叉又分为“硬分叉”和“软分叉”。今天先重点介绍软分叉。

什么是软分叉(不分叉的软分叉是指在区块链或去中心化网络中向前兼容的分叉)

什么叫软分叉

软分叉是指在区块链或去中心化网络中往前适配的分叉。往前适配代表着,当新共识规则发布后,在去中心化架构中节点不一定要升级到新的共识规则,由于软分叉的新规则依然符合老的规则,因此未升级的节点依然能接受新的规则。有人说硬分叉便是分叉,而软分叉就是不分叉,其实这话并不完全对,硬分叉便是分叉是对的,但软分叉其实有可能出现分又的状况。

不分叉的软分叉

软分叉往往不会产生两条区块链,事实上未升级节点无法识别新规则的真实意义,意识不到有新规则的变化。因此,新规则下产生的区块能被旧节点接纳。这时,如果已经升级的节点还可以验证未升级的节京生产出的区块,那么新规则发布后,新老节点依然在同一条链上,对整个系统的影响也就较小,这些问题的软分叉其实只是在称呼上有点欺骗性,事实上这类旧节点接纳新区块,新节点也接纳旧区块的软分又,本质上是新、旧节点互相适配,不分叉的。

分叉的软分叉

假如系统升级后,和旧版本不兼容,那么升级后的新节点就无法接受未升级节点挖出来的所有或部分区块,这类软分叉是真分叉了。由于:旧节点接纳新区块,而新节点不接受旧区块。

这种形式的软分叉又分两种状况:

1.新节点算力超过 50%

由于新节点算力超过 50%,因此无论旧节点接不接纳新区块,最久的链也一定会是全部由新区块组成的链。并且,这条最长链是双方觉得合法的一条。未升级节点挖出来的区块得不到升级节点的以可,由此产生的区块最终会被称之为短链而被舍弃

2.新节点算力低于 50%

新节点由于算力低于 50%,也不接纳旧区块,因此挖的区块链长最少,因此纵使旧节点同时认可两条链的合法性,最后也还是会选择他们所挖的最长链。而全部由新区块组成的链会被旧节点舍弃掉。

软分叉的优点

软分叉可以确保不愿升级的节点没去升级,这类不愿升级的需要在现实生活中其实是很常见的。软分叉不要求所有节点在同一时间升级,允许逐渐升级,不影响软分又过程中系统的稳定性和实效性。

软分叉的局限性

软分叉往前适配的特点,代表着不能提升新字段,只能在已有买卖算法设计下做修改,因此升级空间有限。因为日版本节点不会仔细验证变化的字段,实标际上有发觉不出来不能鉴别新规则的真实意义,因此容易对旧版节点导致蒙骗。

- END -