十一、区块链扩容和分叉的故事

◆比特币为什么要扩容?

▪目前比特币区块大小为1M(1兆),每秒大约只能处理7个交易,随着比特币交易量不断增长,比特币网络已经难以迅速地进行转账交易确认。

▪比特币网络出现拥堵,比特币区块链上最高时有上万笔交易积压,比特币转账交易费高达几十美元。网络拥堵时,比特币交易,甚至需要花费好几天才能被打包,大家开始讨论如何扩容。

▪自2013年起,人们提出了很多关于比特币扩容的方案,有人说要提高区块大小上限,有人说要拿出区块内部分无用信息,但是这些方案都没有被广泛认可。因此,比特币扩容一直争论不休。

▪2017年8月,隔离见证激活。比特币单个区块的信息处理能力提高至以前的1.7倍。
▪隔离见证是Segwit2x扩容方案的第一步。


◆隔离见证

▪是区块链扩容的一种方法,已经在莱特币和比特币上成功实施。

▪目前区块链上每个区块内不仅记录了每笔转账交易的具体信息,即在哪个时间点账户收到或转出多少比特币,还包含了每笔交易的数字签名,用来验证该交易的合法性。

▪矿工在打包区块的时候,需要用数字签名一一验证每笔交易,确认没有问题之后才会将该笔交易记录在区块里。但是对于普通用户来说,他们只关心每个账户有多少资产,并不需要一一验证每笔交易。隔离见证就是把区块内的数字签名信息拿出去,让每个区块可以承载更多笔交易,从而达到扩容的目的。

◆区块链分叉
▪在中心化系统中升级软件十分简单,在应用商店点击“升级”即可。
▪但是在区块链等去中心化系统中“升级”并不是那么简单。甚至可能一言不合造成区块链分叉。简单说,分叉是指区块链在进行“升级”时发生了意见分歧,从而导致区块链分叉。
▪因为没有中心化机构,比特币等数字资产每次代码升级都需要获得比特币社区的一致认可。如果比特币社区无法达成一致,区块链很可能形成分叉。
▪以比特币为例,2017年7月,为了解决比特币区块链拥堵问题,一些比特币爱好者提出来Bitcoin cash分叉方案,导致比特币区块链一分为二。根据分叉后的区块链是否能兼容旧区块链,分叉又分为“硬分叉”和“软分叉”。


◆比特币“生儿子”?

▪现在比特币社区有很多扩容方案

▪如果某种方案可以获得足够的算力支持,成功激活,那么比特币网络将避免分叉风险。但是因为比特币没有中心化的权利机构,很难达成共识。如果没有任何一种方案获得足够的算力支持,比特币区块链将形成分叉,届时将会产生多种比特币分叉。原先持有比特币的人,在分叉后将会自动且免费拥有分叉后产生的每种分叉币。因为分叉币都是免费获得的,所以又被称为糖果。

▪2017年8月,社区就扩容方案达成共识,激活了隔离见证扩容方案。比特币区块链的处理速度扩大至1.7倍。随后4个月里,比特币相继发生了多次分叉,产生了多个分叉币。很多比特币爱好者戏称比特币生了很多儿子。

◆软分叉和硬分叉

▪硬分叉是指当比特币代码发生改变后,旧节点拒绝接受由新节点创造的区块,不符合原规则的区块将被忽略。矿工会按照原规则,在他们最后验证的区块之后创建新的区块。
▪软分叉是指旧的节点并不会意识到比特币代码发生改变,并继续接受由新节点创造的区块。矿工们可能会在他们完全没有理解或者验证过的区块上进行工作。

▪软分叉和硬分叉都向后兼容,以此保证新节点可以从头验证区块链。

▪向后兼容是指新软件接受由旧软件所产生的数据或者代码。

(比如,Windows10可以运行Windows XP的应用)

▪软分叉也可以向前兼容。

▪向前兼容是指旧软件可以接受由新软件所产生的数据以及代码。

(比如,用word2013保存的文档,假如仍然可以用word2011打开,就是一种 向前兼容。)


◆重放攻击

▪比特币发生分叉时,作为普通用户最大的风险就是重放攻击。

▪如果比特币分裂为一种或多种比特币,如BTC1,BTC2,BTC3等。每个比特币账户内将根据他的比特币余额,同时存在对应数量的所有分叉币。由于每条链上的地址和私钥算法等都相同,交易格式也完全相同,导致在其中一条区块链上发起的交易,完全可以放到另一条区块链上去重新广播,可能也会得到确认,这就是 重放攻击。

▪简单来说,在你转账BTC1的时候,你的BTC2,BTC3也可能同时被转走。
▪目前很多分叉币做了双向放重放攻击处理,避免分叉后被重放攻击的风险。

◆硬分叉-以太经典(ETC)
▪以太坊(ETH)和以太经典(ETC)是硬分叉的典型案例。

▪THE DAO计划基于以太坊只能合约建立一个众筹平台,2016年5月正式发布,截止当年6月,筹集资金超过1.6亿美元。

之后,THE DAO被黑客利用智能合约的漏洞转移了市值五千万美元的以太币。为挽回投资者资产,以太坊社区投票表决决定将更改以太坊代码,希望索回资金。为此,以太坊在第1920000区进行硬分叉,回滚所有以太币(包括被黑客占有的)。但是有一部分人认为以太坊这种做法,违背了区块链的去中心化和不可篡改精神。

▪坚持在原链上挖矿,从而形成两条链。

一条为不承认回滚交易的链-以太经典(ETC),一条为承认回滚交易的链-以太坊(ETH)。

各自代表不同的社区共识以及价值观。

▪分叉时,持有以太币的人,才能在分叉后同时持有ETH和ETC。



猜你喜欢

转载自blog.csdn.net/albertzhu_/article/details/80773038