一.为什么区块链要分叉?分成硬分叉和软分叉。
·1M扩容不够?
中本聪是第一人挖矿比特币,基于很多人都不晓得,它开始设计比特币的区块容量就用了1M的扩容方案。但是随着越来越多人认识到比特币的价值,和更多人的参与。【人多了】
中本聪设计的1M扩容方案肯定是不够用的,易使比特币的交易变得拥堵而缓慢,那么导致很多笔交易都要进行滞留排队等待中。
更重要的是随着交易数量的加剧,会很容易让系统奔溃掉,超过了容量极限。
·扩容方案不统一?
后来的人为了解决交易拥堵的问题,选择扩容,可是每个人都有自己的想法,有的想扩成2M,20M,无限扩容等不统一的方案。
谁也说服不了彼此,但是比特币还是要升级啊。
有的人想升级,有的人不想升级,这就产生了分叉问题。于是比特币分叉了。
二.具体来看看分叉的定义(什么是硬分叉什么是软分叉)
1.硬分叉:是指比特币的区块格式或交易格式发生改变时,未升级的节点拒绝验证已经升级的节点生产出区块,不过已经升级的节点可以验证未升级节点生产出的区块。然后延续自己认为正确的链,分成两条旧链和新链。
2.软分叉:是指比特币交易的数据结构发生改变时,未升级级的节点可以验证已经升级的节点生产出区块,而已经升级的节点也可以验证未升级的节点产生出区块。
简单来说就是硬分叉不具兼容性,两条链是分开的,必须已经升级的节点能验证未升级节点生产出区块。
而软分叉具有兼容性特征,两条链,旧的和新的能互相交错放在一起。未升级的节点能验证已经升级的节点产生区块,已经升级的节点也能验证未升级的产生区块。
三.软硬分叉的特点:
1.硬分叉
·没有向前兼容性,之前版本不可再用,强制升级
·在区块链层面会有分叉有两条链,一条旧链,一条新链。
2.软分叉
·有较好的兼容性,之前版本部分可用,可不升级
·在区块链分层上没有分叉的链,只是组成的区块有新区块和旧区块之分。
·相当长的时间里,可允许不进行升级,继续使用原版本生成旧区块,与新区块并存。
网友评论