今天的第一篇文章我们写了“3点钟社群”和分叉群,这第二篇,就跟大家聊聊什么是“区块链的分叉”。
区块链上有可能同时产生2个新区块
以比特币区块链为例,平均每10分钟可以产生一个新区块。
但是要注意,这里有一个词“平均”,这个词就代表:有可能100分钟产生一个,也有可能同时产生好几个。
我们用个简单的图来说明一下:
图中ABC区块是顺序产生的,但是在C区块之后同时产生了D和E2个区块:
D和E新区块会分别向自己临近的区块广播:“我是新生成的区块呀!快把我记录进去呀!”并且会分别在此基础上开始生成新的区块:
很快,就会有一个区块N先后收到D和E的广播,发现D和E拥有同样的时间戳,那么区块N就会判断,选择其中一个为有效区块,另外一个为无效区块。
那么判断的依据是什么呢?
就是链的长度。
此时D区块的基础上已经产生了3个新区块,但是E区块基础上只产生了1个新区块,此时区块N就会向其他节点广播:“D跟E虽然是同时生成的,但是D基础上的链更长,所以D有效E无效。”
结果就是区块D和它基础上的3个新区块继续存在,E和它基础上的1个新区块被放弃。
同时产生2个新区块的状况,就叫做“分叉”。
在上面的例子中,区块链的节点都认可D而放弃E,E和它基础上的1个新区块存在了一段时间又消失。这种可以消除的临时分叉,就叫做“软分叉”。
但是如果有一些节点即便是知道D基础上的新区块更多、链更长,依旧以“法律”或“道德”的各种名义号召大家认可E和它基础上的1个新区块,一旦得到响应,那么E区块所在的链就会发展壮大起来,不再消失。这种固定分叉,就叫做“硬分叉”。
历史上最出名的硬分叉事件
事件发生在2016年,是由以太坊创始人Vitalik Buterin主导的。
5月底一个叫做The DAO的项目众筹成功上线,并且逐渐在各大交易所开放交易。
6月上旬,以太坊开发人员发现The DAO存在漏洞,其中的币可能被转移而原有地址的币不会减少,也就意味着可以不断重复向外转出个人账户内的币。
6月中旬,有黑客利用此漏洞总计向外转出了1200万个以太币,几乎占据了The DAO众筹总量的三分之一。
虽然相继提出了通过发送大量垃圾交易阻塞交易验证以减缓黑客的继续偷盗、软分叉等解决方案,但是都不能有效解决这一问题。
于是,6月底,以太坊创始人Vitalik Buterin提出硬分叉设想,通过硬分叉使得黑客利用漏洞转出交易的区块失效。
7月中旬,超过85%的以太坊算力支持硬分叉,以太坊硬分叉成功。
新链是以太坊(ETH),原链是以太经典(ETC)。
为什么会有15%的算力不支持硬分叉呢?
因为硬分叉实际上是违背了区块链“不能修改”的技术本质,采用了人为手段“强制回滚”。
因而在部分区块链信仰者看来,Vitalik Buterin的硬分叉是对区块链的背叛,他们反对硬分叉,并且坚定地为原链(ETC)继续贡献算力。
关于我们
基于对区块链技术的坚定信念,韭菜之家LeeksPro专注于改造数字资产业界现阶段的生态体系,立志于创造一个开放透明、有爱互动的资讯交流平台。
初期以【韭菜之家】社群为主,帮助广大数字资产爱好者和投资者正确学习区块链知识、了解数字货币投资方法,用心提供更有价值的服务。
网友评论