10.比特币的扩容与分叉
比特币的每一个区块的大小是1M,能容纳1000条左右的交易信息
- 比特币网络的交易越来越多,很多交易无法在交易发生后的第一个产生的区块被打包和确认,可能等好几个区块甚至更久
- 粉尘攻击
- 即有人制造出大量的小额转账,是个网络中有大量的待确认交易,导致正常的比特币转账不能被确认
- 粉尘攻击事件中,有交易者等待了2天或更久
- 扩容,扩大区块的容量,突破1M的限制。2014年开始提上日程
- 2015年年底,core开发团队和矿工在香港进行圆桌会议,达成了“香港共识”,很快流产
- 2017年在纽约,再次达成共识,实行隔离见证+2M扩容方式,因此从2017年上半年开始,比特币系统开始升级和部署
比特币的扩容方案
- 不碰比特币本身的区块,用闪电网络去进行比特币结算,将大量的交易置于比特币本身网络之外
- 闪电网络,先把小额交易进行记账,最后进行结算
- 技术不成熟,需要在隔离见证技术之上才能运用
- 直接扩大区块的大小
- BIP141,core团队提出的隔离见证方案
- 隔离见证是为了让区块承载更多的交易而设计,将区块上的信息分为交易信息(记录转账信息)和见证信息(记录每个借点在什么时间验证交易的信息)
- 中本聪最初设计时,将交易信息和见证信息同时放到了区块里,分离后将扩大区块存储交易信息
- 当前公认的隔离见证方案。激活条件:2017年1月15日前的任意一个难度周期(约两周)内如果有95%的算力发出准备就绪信号,隔离见证将被激活
- UASF,用户激活软分叉
- 采用BIP148的软件来实现隔离见证
- 2017.8.1,比特币BIP148软件会拒绝不包含bit1信号的区块。即如果大多数矿工运行这个软件,他们会拒绝少数没有运行该软件的矿工挖出的区块。运行软件的矿工将拥有最长链,并在最长链上激活BIP141的隔离见证条件
* 最终运行BIP141的借点会在脸上看到超过95%的区块包含bit1,从而触发隔离见证
* 此方案已经实施,诞生了新的区块链资产bitcoincash
* bitcoincash的区块大小可上升到8M,容纳交易的笔数大约是原来的8倍
- SegWit2x
- 通过BIP91来激活隔离见证
- BIP91,当连续两天内有80%的算力发出支持BIP91的信号的话,所有BIP91借点将拒绝不含BIP141准备信号的区块
- 激活后,2017年底或2018年初,SegWit2x将通过硬分叉把区块大小从1M增加至2M
硬分叉
- 比特币规则协议发生改变,旧节点拒绝新节点创造的区块,区块链将分成两条独立的链
- 矿工需要选择其中一条进行挖矿
- 重放攻击
- 比特币分裂为比特币1,2,3
- 当1被交易时,很可能对应的2和3也被自动交易,再也拿不不回来
- 尘埃落定之前,不要转比特币
- 存放在一个能够帮你处理好分叉的可信赖的交易平台
软分叉
- 比特币规则协议发生改变,旧节点并不会意识到规则的不同,将遵循改变后的规则,并接受新节点产生的区块