聊聊比特币的分叉技能

引言

常混迹币圈,你一定听过,比特币分叉、软分叉、硬分叉,等概念

比特币为什么会分叉?
什么是比特币的硬分叉?
什么是比特币的软分叉?

i

1.比特币为什么要分叉?

我们都知道比特币网络平均经过10分钟会对各节点的数据进行汇总打包成区块,各个区块头尾相连形成区块链,这个区块就是包含了比特币交易信息的数据盒子。这个盒子在中本聪设计比特币初期时就定下了它最大的容量为1M,而比特币网络里每笔交易大概是250-500字节之间,所以一个数据盒子同时最大能处理的交易笔数为4000笔左右,每秒能处理的交易数在7笔左右。

随着比特币被越来越多的认可,发生在比特币网络里的交易量暴增,这就导致了比特币网络的拥堵。

比特币扩容的问题早在2014年就引起了各社区的重视,好在比特币的网络是一个去中心化的组织,大家靠共识维护系统的运转。

有一个问题,大家共识的到底是什么?

我们来回顾一下区块的结构,区块包括区块头和区块主体两部分,其中区块头又由上一个区块的哈希地址、挖矿难度和时间戳、总结所有交易数据的Merkle树根数据三部分组成;而区块主体包含的是所有的交易数据。

也就是说每一个区块在打包数据时必须遵循以上的组成结构,才会被各个节点审核通过,否则是不会被认可放上链的,这就是大家共识的点。

因为“挖井人”中本聪始终是个神秘的存在,所以大家不得不借助共识的力量对比特币进行分叉.

2.什么是比特币的硬分叉?

目前硬分叉币里比较成功的当属BCH(比特现金),其余69个分叉币里仅有10个进行了上线流通。

硬分叉是指比特币区块格式或交易格式(这就是广泛流传的“共识”)发生改变时,未升级的节点拒绝验证已经升级的节点生产出的区块,不过已经升级的节点可以验证未升级节点生产出的区块,然后大家各自延续自己认为正确的链,所以分成两条链。

总结一下硬分叉的特点:

1.新链兼容旧链,但旧链无法识别认可新链。
2.分叉币包含旧币的原有数据,在其基础上进行的升级。
3.有一个时间节点,不能兼容新系统的的币将会进入旧链。

举个例子来解释一下硬分叉。

我们来模拟一个场景,每年圣诞节小朋友们都会收到圣诞老人的圣诞礼盒,其实这些圣诞礼盒是在秘密的圣诞王国里被批量生产出来的。

圣诞王国里有一条长长的礼盒生产链,链条上载满圣诞礼盒,伴随链条有序的前行,链条周围有很多的圣诞老人,他们负责对礼盒进行质检。当一个礼盒被生产出来时,所有圣诞老人会对该礼盒进行检查,当该礼盒经过所有圣诞老人认可后,会被盖上圣诞老人专属的印章,最后被投放到链条上。

有一天,小朋友们对原来的圣诞礼盒开始不喜欢了,他们认为礼物种数太少了,圣诞王国的礼盒生产商得到这个讯息,快速对礼盒做出调整,发明了一款超级礼盒,超级礼盒在原来礼物的基础上对礼物数作了很大的补充。

听到小朋友心声的圣诞老人,对自己的审核标准进行了升级,旧礼盒和超级礼盒都可以上链,而还是原来审核标准的圣诞老人对超级礼盒是不认可的,所以审核是不会通过的。

最后审核标准进行过升级的圣诞老人们,只能另建了一条新链进行超级礼盒的审核,以保证小朋友都能收到自己喜爱的圣诞礼物。

再来看一下软分叉

3.什么是比特币的软分叉?

先来看比特币两次软分叉实例。

比特币在2012年一次重要的升级,叫P2SH,被社区称之为多重签名软分叉。这是对比特币交易签名脚本的一次修改,使得比特币可以很方便的通过多重签名的方式来发送交易。
2016年6月份比特币区块链上又执行过一次软分叉升级,使得那是BIP68/112/113正式在比特币协议里生效,被社区称为CSV软分叉。

这种新版本的节点按照定义过的规则生产新区块,还可以被旧版本的节点验证接受,这就是软分叉的具体过程。

软分叉的特点

1.新旧节点在同一条链上共存,没有新链旧链之分。

2.新的节点兼容旧节点的系统,同时旧节点也能识别新节点的系统

回到圣诞王国,软分叉的情况是这样的:

部分圣诞老人在送出礼物的时候,听到小朋友们说希望能收到自己独有的圣诞祝福卡片,圣诞老人把这个诉求加到自己的审核标准里。

有需求就有市场,商家们马上为这些小朋友量身定做了圣诞祝福卡片,放在圣诞礼包空隙处。

虽然礼包有所改变,但在升级过审核标准的圣诞老人和原有圣诞老人那里都能通过审核,礼盒发生了改变,但还是在同一条链条上存在。

软分叉像夫妻间的小打小闹,虽然观念有所不同,但还会在同一个屋檐下相安无事,硬分叉则是有了本质的嫌隙,除了分道扬镳别无它法。

你可能感兴趣的:(聊聊比特币的分叉技能)