区块链具有去中心化特性,区块链上的事件不由一个人或一个公司单独决定,上的每一个节点都是决策者。假如比特币需要升级,则要征得所有节点的同意,但假如社区内出现重大意见分歧,将出现分叉分叉可以说是加密货币领域的软件更新与升级。分叉方式有两种:硬分叉与软分叉

硬分叉
指旧节点不兼容升级后的新节点区块,从一条上分出了另一条,新仍然具有旧的某些技术基础,但两条互不相干,这意味着没有更新到新版本的节点将无法把新区块更新到上。就像是Android系统使用时间过长会变得卡顿,因此为了解决此项问题出现了IOS系统,两个系统互不干扰,各自发展。

软分叉
分叉时不会分出两条,只会对旧进行一些升级。旧可以兼容新的存在,但新不兼容旧,二者可以共存于一条上。这意味着只要节点不破坏新的协议,没有更新的节点仍然可以把新区块更新到上。可以将软分叉比作是智能手机的系统升级,新系统是在旧系统基础上进行了某些升级,并不是将旧系统全部推翻建立新系统。而且旧系统可以不断升级为新系统,但新系统却不能倒退降级为旧系统。

一般来说软分叉难度高于硬分叉硬分叉向下不兼容,相当于开发一个新的功能,不需要考虑与旧版本的兼容问题。而软分叉需要向下兼容,始终保持唯一的一条区块链,通常需要很多人共同研究论证这样的升级是否合适。

分叉与软分叉的优缺点

硬分叉
优点:为区块链探索更多升级的可能性,促进区块链技术的发展。
缺点:社区成员意见不一,给社区造成一定的不稳定性。同时硬分叉需要矿机同步更新,给矿工增加了成本。

软分叉
优点:不要求所有节点同一时间升级,允许逐步升级,不影响软分叉过程中系统的稳定性。
缺点:仍会有变成硬分叉的风险。软分叉必须向下兼容,不能增加新字段,让区块链的升级空间有限。