网赚论坛

 找回密码
 免费注册
查看: 250|回复: 0
打印 上一主题 下一主题

详解有关软分叉和硬分叉

[复制链接]

18

主题

19

帖子

72

积分

Ⅰ级财主

Rank: 1

积分
72
跳转到指定楼层
楼主
发表于 2017-11-21 02:42:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
通常有个看法是:软分叉比硬分叉更温和,因为不需要网络所有节点都一起升级。 但其实软分叉和硬分叉在本质上差别不大,都需要绝大多数算力支持,在这里详细解释一下

目前的触发机制是,升级后的版本,当最近的2016个块中有75%以上的块是新版本挖出来的,经过一段信息发布期,新版本就开始生效,产生新版本所支持的新格式的区块

举例来说,目前一部分人升级到SW,另一部分人升级到CLASSIC,这两个版本中,SW是软分叉,CLASSIC是硬分叉,但在触发条件达到之前都和原来的CORE一样,互相兼容。

也就是说,任何一方如果没有获得75%的算力支持,就始终是CORE,1MB区块,不会产生新格式的区块

一旦触发条件达到,比如说最近75%的块都是运行SW的矿工挖的,那会有一段等待期,系统会建议大家在XX天内赶紧升级,然后过了XX天以后,SW的矿工就开始产生新格式的区块

SW是软分叉,这意味着当新格式的区块开始在网上传播后,没有升级的CORE节点仍然可以承认和转发这些新的区块而无需升级。这是怎么做到的?因为软分叉用了一个障眼法,使得新格式的交易对CORE节点来说只是部分可见,全都显现为任何人都可以花的不需要签名的交易,这样就全都是有效的,就可以通过CORE的验证,也就不会产生分叉

仔细想一下,这样的障眼法在保证CORE无条件接受SW区块的同时也带来了另一个问题,即一旦有非法的SW交易,CORE节点也是无条件接受的,因此在CORE和SW共存的网络中,安全性会相应降低

此外,根据软分叉的定义,一旦SW达到触发条件后,SW节点会拒绝接受CORE矿工挖出来的区块,这是个很严重的问题。这是因为CORE节点同时也接受SW的区块,在SW矿工算力明显大于CORE矿工的时候,SW的链总是最长的链,CORE矿工所挖出来的区块既然不被SW节点承认,就全都被孤立掉了,矿工没有任何办法使用CORE,就被迫全部转到SW。可见对矿工来说,软分叉就比硬分叉还要具有强制性,因为矿工完全丧失选择余地,也无法产生自己的链,因为系统只认最长的链。只有不挖矿的节点可以继续运行CORE


再来看硬分叉,比如说一旦运行CLASSIC的矿工算力到了75%,开始产生CLASSIC区块,那么剩下的节点就应该升级,否则就会拒绝新格式的区块而自己搞出一个分叉来。但因为这个分叉算力低,安全性差,几乎不会有人用,矿工挖这个分叉的矿也会严重亏损,所以很快也就抛弃了,全网就会一致的升级到CLASSIC。但起码,矿工不是非升级到CLASSIC不可,仍然有自由选择的余地


结论就是,无论是软分叉还是硬分叉,最终都是需要达到一个100%全部升级的状态才能保证网络安全,但因为软分叉强制所有矿工同时升级,所以实际上更加霸道一些
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

广告合作|Archiver|手机版|小黑屋|财富吧

GMT+8, 2024-12-28 23:47 , Processed in 0.140400 second(s), 35 queries , Gzip On.

Powered by Discuz! X3.1

© 2014-2021 财富吧

快速回复 返回顶部 返回列表