发布时间:2025-12-16 01:55:51 浏览次数:4
软分叉是指在区块链或去中心化网络中向前兼容的分叉。向前兼容意味着,当新共识规则发布后,在去中心化架构中节点不一定要升级到新的共识规则,因为软分叉的新规则仍旧符合老的规则,所以未升级的节点仍旧能接受新的规则。
区块链上节点众多,当出现新版软件后,不一定所有的节点都愿意升级,也不一定所有的节点都能马上反应过来。节点面对新版软件反应的不同造成的分叉结果也不同。根据升级后的区快链是否能兼容旧区块链,分叉又分为“硬分叉”和“软分叉”。今天先重点介绍软分叉。
软分叉是指在区块链或去中心化网络中向前兼容的分叉。向前兼容意味着,当新共识规则发布后,在去中心化架构中节点不一定要升级到新的共识规则,因为软分叉的新规则仍旧符合老的规则,所以未升级的节点仍旧能接受新的规则。有人说硬分叉就是分叉,而软分叉就是不分叉,其实这话并不完全对,硬分叉就是分叉是对的,但软分叉其实也可能会出现分又的情况。
软分叉通常不会产生两条区块链,实际上未升级节点无法识别新规则的真实意义,意识不到有新规则的改变。于是,新规则下产生的区块会被旧节点接受。这时,如果已经升级的节点也可以验证未升级的节京生产出的区块,那么新规则发布后,新旧节点仍然在同一条链上,对整个系统的影响也就较小,这种情况的软分叉其实只是在叫法上有点迷惑性,实际上这种旧节点接受新区块,新节点也接受旧区块的软分又,本质上是新、旧节点互相兼容,不分叉的。
如果系统软件升级后,和旧版本不兼容,那么升级后的新节点就无法接受未升级节点挖出来的全部或者部分区块,这种软分叉是真的分叉了。因为:旧节点接受新区块,而新节点不接受旧区块。
这种形式的软分叉又分为两种情况:
1.新节点算力大于 50%
因为新节点算力大于 50%,所以不论旧节点接不接受新区块,最长的链也一定会是全部由新区块组成的链。而且,这条最长链是双方都认为合法的一条。未升级节点挖出来的区块得不到升级节点的以可,由此产生的区块最终会被认为是短链而被放弃
2.新节点算力小于 50%
新节点因为算力小于 50%,又不接受旧区块,所以挖的区块链长最短,所以纵然旧节点同时承认两条链的合法性,最终也还是会选择自己所挖的最长链。而全部由新区块组成的链会被旧节点放弃掉。