[区块链100问]第四问:什么是硬分叉?什么是软分叉?
发布:中币网 时间:2019-12-11 13:03:05 加入收藏 打赏
[区块链100问]第四问
什么是硬分叉?什么是软分叉?
问题由“昵称ID:金元宝”提出,今天安排!欢迎更多场东@我询问哟
发生分叉原因?
简单来讲,区块链网络在升级时发生了意见分歧,从而可能导致区块链分叉。
除了意见分歧外,某些协议的添加、升级,也可能需要通过分叉实现。
什么是硬分叉?
定义:区块链发生永久性分歧,在新共识规则发布后,部分没有升级的节点无法验证已经升级的节点生产的区块,通常硬分叉就会发生。
硬分叉是对协议的修改,启用了新的交易或区块格式,使得老客户端无法识别,因此要求所有客户端都要升级。通常情况下,对区块的结构、难度,共识的规则,或者改变有效的交易类型,都会产生硬分叉。
打个比方,生活中我们乘坐的火车,在经过一条笔直道路后如果需要进行其他方向的变道,就需要经过道岔走过一条新钢轨,这条路与原本钢轨方向不同我们就可以称为在原本方向上进行硬分叉。
什么是软分叉?
定义:当新共识规则发布后,没有升级的节点会因为不知道新共识规则下,而生产不合法的区块,就会产生临时性分叉。
软分叉是对协议的修改,使得老客户端可以将新的区块识别为合法的区块,所以说软分叉是向后兼容的。新的交易类型经常是以软分叉的方式添加进来,它只需要发送者和接收者以及对应的新客户端能够识别新的交易类型即可。
打个比方,软分叉就是在原有的高速公路上进行修修补补,给原有的公路进行升级,所以软分叉之后呢,原有的汽车还是可以在旧的公路上继续行驶,而且行驶的速度可能也会加快。就可以把这些软分叉看作是对原来的区块链进行一个升级。
由此可见两者区别在于:
硬分叉修改数据结构后,新节点生产的区块会被旧节点拒绝掉,如果旧节点拒绝升级软件而坚持按照旧数据结构继续挖矿,那比特币就会产生两条链。
软分叉修改数据结构后,新节点生产的交易和区块能够被旧节点验证并接受,所以不会出现两条链。
软分叉可以不需要所有节点共同升级,旧节点依然可以验证数据,但是硬分叉必须所有节点共同升级,否则旧节点无法使用,所以可以简单理解为分叉后是否产生新链,产生了就为硬分叉,反之为软分叉!
“区块链100问”活动!
该活动由“胖子区块链”发起,如果你有什么关于区块链的问题,请发文@我(胖子区块链)或者在我文章下评论提出,每天选一条精选问题回复。
活动目的:为了让更多人认识区块链、了解区块链,合理投资、理性看待市场。
来源:链向财经
来源:中币网 https://www.zhongbi.net/news/blocknews/233677.html 声明:登载此文仅出于分享区块链知识,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。 此文如侵犯到您的合法权益,请联系我们3111859717@qq.com,我们将第一时间处理。