比特币隔离认证是什么(比特币隔离验证)

软分叉和硬分叉

比特币区块链毕竟是利用编程而来的软件,在不断发展的过程中,会修订协议引入一些新的特性,这时软件就需要升级,由于比特币网络是分布式的,所有节点都可自由选择升级或不升级,那么就会出现老版本和新版本的兼容性问题。

1. 硬分叉

通过修订协议引入新的特性,可能会使前一版本的协议失效。运行新版本的节点产生的新区块,在老版本节点被认定无效。这样新版本节点始终在新版本的链上,老版本节点始终在老版本的链上,原本的一条链从而分叉成俩条链,而且永远不会合并。

硬分叉图解

2. 软分叉

通过修订协议引入新的特性,让现有的核验规则更加严格。新版本节点不会接受老版本节点产生的新区块,老版本节点则会接受所有节点产生的新区块。当新版本节点数>51%时,老版本产生的新区块被大多数节点拒绝,从而被排除在最长链之外,这样老版本节点不得不升级,从而保证现有区块链还是只有一条链。

软分叉图解

隔离验证(sigwet)

那么比特币协议的修改由谁决定呢?Bitcoin core是首席开发人员,他们拥有编写规则手册的权利,但是他们的又不能随意更改。任何人都可以在比特币社区提交技术改进的方案,如果想对软件就进行较大的改动,特别是对协议进行修改,则通过一个较为正是的流程来实现,即比特币改进方案(Bitcoin,Improvement Proposal,简称BIP),BIP以编号序列形式发布,当某个BIP被社区大多数人所接受,那么bitcoin core就会修改协议,进行软件升级。

我们之前谈到比特币区块大小只有1M,每秒只能处理7笔交易。我们来和visa比较一下,visa平均每秒处理2000笔交易,最多能达到10000笔交易。显然比特币这样的处理速度不能满足人们的需求,这时大家就提出比特币扩容的方案。

方案一:比特币区块直接扩容,这样会引起硬分叉,而且大区块也需要节点的大存储,直接被bitcoin core否决。

方案二:比特币区块仍然为1M,但是把交易的交易脚本输入移出比特币区块,被放在一个单独的,新的数据结构当中,做验证工作的钱包和矿工会使用新的数据结构,以确保交易的签名是有效的。这样比特币区块实际容纳2M左右的交易。这个方案被叫做Segwit(隔离见证)。这个方案是软分叉。

方案三:Segwit2X, 即比特币区块扩容至2M,再加上segwit,比特币实际容纳4M左右的交易。这个方案是硬分叉。

最终,2017年8月8日比特币社区100%通过比特币segwit方案,即方案二。到2018年2月,使用Segwit的比特币交易超过30%。

2017年11月9日,由于社区没有达成足够的共识, Segwit2X 硬分叉计划取消。

2017年8月1日,比特币社区里支持比特币区块扩容的一派(主要是几大矿池)硬分叉比特币,产生了比特币的分叉币\"比特币现金(BCH)\"。BCH的区块最初容量为8M,目前为32M,预计未来可扩至1G。

闪电网络(lighting)

在比特币的交易中有很多微小交易,这些交易由于交易的价格低,次数多,在比特币区块中的占比也不小,如果遇到比特币交易高峰,这些交易的手续费也很低,所以很难入链。针对这些微小交易,利用比特别脚本多重签名的技术,提出了闪电网络(lighting)的方案。举例说明,如果B是网络运营商,A想用B的网络,A必须按每分钟计时给B支付流量费用,且A也不知道什么时候能结束使用。那么就需要多重签名,A和B同时签名才能生效,A在使用网络是,每隔1分钟向B支付流量费,剩余的比特币支付给自己,如此反复,注意这些签名只有A的签名,没有B的签名,直到A结束使用网络,告诉B\"我使用完了,可以切断了\"这时,B切断网络,把最后一笔交易签名,这时最后一笔同时有A和B的签名,即这个这笔交易有效,最后一笔交易可以入区块链,之前那些只有A签名的交易不入链。这就是闪电网络的交易过程,闪电网络提供A和B交易的通道,交易结束,通道关闭,最后一笔交易入区块链。闪电网络在很大程度上缓解了比特币区块链的拥堵。

隔离见证和闪电网络都是在比特币区块链外进行第二层的扩建,相当于在一栋房子里,一层现在每个房间人满为患,且盖房子的速度远远赶不上人进来的速度,那么以后再盖楼的时候,每个房间的面积不变,只是原来的一层楼变成两层楼,有一些人上二楼,在隔离见证中,二楼的人和一楼的人有对应关系,名为“输入”的人在二层,名为“输出”的人在一层。在闪电网络中都是微小交易,可以理解为都是小孩,占地面积小,在单独的二层房间中,且对应一层的某个输出。这样原来的比特币区块大小没变,但是实际容纳的交易数量增加,相当于扩容。