LOADING...
LOADING...
LOADING...
当前位置: 玩币族首页 > 区块链资产 > 十分钟区块链系列07:比特币的区块扩容

十分钟区块链系列07:比特币的区块扩容

2019-12-22 爱因斯坦一撇 来源:区块链网络

4年前本人买了一台iPhone 6,16G,刚开始用着还好,后来软件越装越多,微博、微信又是各种图片、视频,储存空间不断减少,经常在拍照的时候弹出空间不足的提示,这时候我只能迅速的删掉几个最近不用的软件,或者清理一下微信缓存。如果不清理缓存,手机变得卡顿,十分难受。后来实在忍受不住,换了128G的iPhone 11,完美解决问题!存储空间,我们经常遇到的问题。解决方案无非两种,一是加大空间,比如买张内存卡插上去,二是清理空间,比如清理缓存,卸载软件。

f7b0b0191e766c1ff73e0ecc6837ebc7.jpg

比特币的扩容问题

63cf45588619ec2f228d322ed61377d5.jpg

中本聪在设计比特币的时候,大概也没想到区块链会发展到今天这个样子,也想不到比特币网络的节点数据会越来越大,于是他把比特币区块链网络的单个数据块的物理大小限制为1M,也就是1024KB!这个设计成了比特币需要扩容的主因。操作过比特币转账的朋友肯定会遇到转账需要少则10来分钟,多则个把小时的情况,为什么会这样呢?因为比特币网络其实就是一个分布式的账本,节点之间不断同步交易的信息,矿工打包之后把区块信息同步给各个节点,节点验证之后再更新本地的数据库。随着时间的推进,比特币共识越来越强,交易量不断增加,数据也变得复杂、庞大,比特币的数据块容量问题也开始暴露出来。据称比特币的一个数据区块大概能记录1700条交易事务,打包确认时间为10分钟,也就是600秒,也就是差不多1秒钟能处理3条交易。这个速度完全是落后于银行卡、支付宝、微信等转账的,在大规模的商业应用下是缺乏竞争力和说服力的,肯定会限制比特币的发展。在比特币的网络中矿工节点可以根据手续费高低给交易排优先级,给的手续费越高,优先级越高,但是这种玩法不够健康。为了比特币的更好发展,比特币网络的控制者和专家进行了多次对比特币扩容的探讨,出了很多方案。比特币扩容改进方案,简称BIP(Bitcoin Improvement Proposal),在此基础上衍生出很多方案,比如BIP100、BIP100等。

隔离见证

“隔离见证”是和比特币扩容息息相关的一个概念,源自BIP91(2017年7月21日提出,计划2017年11月将比特币数据区块升级到2MB),英文为Segregated Witness=SegWit。前面我们讨论了储存空间不足的解决方案,一是加大储存,二是清理,实际上就是一种简化、缩小的思想。“隔离见证”来源于缩小的思想。一个数据块能记录1700条交易事物,假如我们把交易事务压缩一半,那不就可以提升一倍的处理速度吗?上一期介绍了UTXO,在比特币交易中,其实就是有很多UTXO组成,两个地址之间通过公钥解锁,私钥签名的方式转移UTXO,UTXO其实就是“见证”,主要用来验证交易合法性,每一笔交易事务对应一个哈希算法生成的唯一ID。这个ID的生成需要计算整个交易事物,包括签名。通过签名可以确定交易方的身份,这个签名占据了部分空间,但是这部分信息除了参与直接交易的节点,其他普通节点并不需要,所以可以在接收的时候舍弃,也就是“隔离”。

比特币的扩容方案

了解了“隔离见证”,我们其实也大概知道,比特币的扩容可以通过加大数据块大小,也可以通过“隔离见证”减少交易事务的大小,按照数学上的排列组合,有三种方案:a.仅扩容区块,不进行“隔离见证”;b.仅进行“隔离见证”,不进行区块扩容;c.同时进行扩容和“隔离见证”。

分叉

区块链的特殊性主要在于分布式,去中心化,这个特性导致一个问题就是众口难调,普通的应用需要升级,可以强制升级,很快就能完成,而区块链没办法。当发布了一个新的区块链版本,比如修改了比特币的源码,对区块扩容了,因为没法做到让所有的网络中的版本都升级,结果就是网络中存在不同的版本,而矿工/矿池也可以选择自己的方案,这就导致打包出来的数据有多种格式,格式不兼容就会使原来的主链分叉为多条链。2017年8月1日,比特币分叉出一个新的币种,Bitcoin Cash,BCC。BCC的区块大小是8MB,没有“隔离见证”。

36bafa64ea353150ce9c595b0f0a04cf.jpg

分叉也有不同的类型,比如硬分叉和软分叉,有兴趣可以了解一下,在此不再展开。

—-

编译者/作者:爱因斯坦一撇

玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。

LOADING...
LOADING...