唐q(sεt5星评价
2020-11-04 14:01:49
随着比特币的发展,这条路上跑的车越来越多,于是出现了严重的拥堵,通行速度变得很慢,很多人都把车开到马路入口了,但就是上不了路,最严重的时候甚至要等上一两天。等不了那么久?那你可以给马路管理员(矿工)更高的手续费来优先上路。为了解决上述问题,大家一致决定要对区块进行扩容,然后就出现了两种略有冲突的方法,这就是所谓的分叉:软分叉和硬分叉。
硬分叉意思就是说,当比特币的代码发生了一系列的变化之后,旧的相关节点不接受新创造的区块。软分叉的意思就是说,与硬分叉相反,它可以接受。
硬分叉,是指当比特币代码发生改变后,旧节点拒绝接受由新节点创造的区块。不符合原规则的区块将被忽略,矿工会按照原规则,在他们最后验证的区块之后创建新的区块。
而软分叉是指旧的节点并不会意识到比特币代码发生改变,并继续接受由新节点创造的区块。
矿工们可能会在他们完全没有理解,或者验证过的区块上进行工作。软分叉和硬分叉都"向后兼容",这样才能保证新节点可以从头验证区块链。向后兼容是指新软件接受由旧软件所产生的数据或者代码,比如说Windows 10可以运行Windows XP的应用。而软分叉还可以"向前兼容"。
田劲峰fie5星评价
2020-08-24 16:42:43
硬分叉是指比特币区块格式或交易格式(这就是广泛流传的“共识”(应该是部分协议共识))发生改变时,未升级的节点拒绝验证已经升级的节点生产出的区块,不过已经升级的节点可以验证未升级节点生产出的区块,然后大家各自延续自己认为正确的链,所以分成两条链。
软分叉是指比特币交易的数据结构(这就是被广泛流传的“共识”(应该是部分协议共识))发生改变时,未升级的节点可以验证已经升级的节点生产出的区块,而且已经升级的节点也可以验证未升级的节点生产出的区块。
二者区别:
硬分叉:没有向前兼容性,之前的版本将不可再用,需要强制升级。
软分叉:有较好的兼容性,之前版本至少部分功能可用,可不升级。
硬分叉:在区块链层面会有分叉的两条链,一条原旧链,一条分叉新链。
软分叉:在区块链层面没有分叉的链,只是组成链的区块,有新区块和旧区块。
硬分叉:需要在某个时间点全部同意分叉升级,不同意的将会进入原旧链。
软分叉:相当长的时间里,可允许不进行升级,继续使用原版本生成旧区块,与新区块并存。