了解比特币的人都知道,比特币区块大小只有1M,但是有没有人想过,为什么当初只设定了1M,而不是512K,也不是2M 或者8M呢?
比特币区块大小为什么是1M?
比特币区块中永久记录着比特币(BTC)网络上的最近交易有关的数据,每个区块可以比作分类帐的页面,区块“链接”在一起构成支撑比特币网络的分散分类帐。
这些捆绑交易在被作为新区块添加到比特币区块链之前由矿工确认。区块的大小会对每个块可以验证的事务数量产生限制。因此,较大的区块需要更大的计算能力并且需要更长的时间来开采。超过限制的区块将被网络拒绝。
在比特币处于初期阶段,区块数限制为每个不超过36兆字节的交易数据。但是,为了应对交易垃圾邮件堵塞网络的威胁和潜在的分布式拒绝服务(DDoS)攻击,区块大小在2010年7月14日减少到1MB 。
事实上,如果用现在普通的电脑来打包记录一个大小为1M的区块,那么从开始验证到结束大约需要30秒,但是如果是需要验证一个2M的区块,可能就需要高达10分钟,这个时间是极其漫长的,因为在这段时间内,黑客可以做很多事情!理论上来说,黑客可以根据这个延时,对比特币网络进行攻击。为了避免这种攻击,所以在当时最佳的选择就是让每个区块都在 1M 大小左右。
比特币区块大小为何如此重要?
区块的大小限制了比特币网络每秒能够处理的事务数量,因此可以看出它会抑制网络的扩展能力。当块填满时,网络变得拥挤,交易费用急剧上升。
在2013年初,比特币平均块大小约为125千字节。截至2015年5月,越来越多的采用率导致自2013年以来块大小增加了240% - 从125 KB增加到大约425 KB - 然而,加密交易工具提供商TradeBlock随后估计块每天至少四次达到1 MB的限制平均。
到2015年,接近交易数据限制的区块越来越普遍,主流加密货币时代热潮开始流行,人们担心交易处理的显着放缓和费用的增加,由此产生的费用增加和交易处理延迟被视为破坏了支撑BTC的核心公用事业,社区中的许多人担心网络拥堵和转移成本的增加会使比特币成为一种交换手段。
毫无疑问,比特币网络如今变得比以往任何时候都更加拥挤,交易数量和区块大小已经接近极限,手续费也达到了前所未有的水平,因此也有了现在的比特币区块扩容提议。
为什么要增加比特币区块大小?
多年来,比特币已经看到许多提议,即为了降低费用,每秒处理更多交易以及允许比特币扩展以与主流支付技术竞争,需要增加。
2015年5月4日,Gavin Andresen发表了一篇题为“为什么增加最大区块大小是紧急的”的文章,进一步提升了区块大小辩论的重要性,尽管平均BTC区块只有30-40%满。安德烈森警告说:
“如果等待的交易数量足够大,最终结果将是一个过度饱和的网络,忙于无所事事。我认为不太可能,人们更有可能停止使用比特币,因为交易确认变得越来越不可靠。“
那个月晚些时候,安德森宣称如果社区未能就区块大小增加的实施达成共识,他将把工作转向替代客户比特币XT。2014年12月比特币核心开发者和1MB区块限制Mike Hearn的着名评论家推出了0.10版比特币XT 。
2015年6月4日,安德森主张矿工和节点运营商应该能够自主决定区块大小,认为社区要么维持限制,要么“看看交易费必须增加多少,直到矿工意识到他们是'把钱留在桌子上'并自己提高-blockmaxsie'或“用'跟随人群'规则取代限制”,这意味着任何不关心的矿工都会创造既不增加也不减少平均大小的区块“。
2015年6月12日,一份声明要求引入由中国主要矿业集团F2pool,BTCChina,Antpool,Huobi和BW 签署的8MB区块,这表明对大型区块的跨国需求。
2015年6月22日,Andresen发布了比特币改进提案(BIP)101,该提议“以可预测的速率替换固定的1兆字节最大区块大小,其最大大小随时间增长。”
什么是SegWit隔离见证?
隔离见证(Segregated Witness)或SegWit是通过从比特币交易中删除签名数据来增加块的数据容量的过程。删除事务的某些部分后,将释放容量以向区块添加更多事务。对于SegWit,每个数据字节仅计为一个块的四分之一,便于在区块内记录四倍的传输。
在对区块大小限制进行了一年激烈辩论之后,2017年3月31日发布了SegWit 2 MB的提案。该提案主张通过软叉激活隔离见证,然后通过后续硬分叉将区块大小提高到2 MB。
在接下来的一个月里,数字货币集团发表了一篇题为“ 2017年共识中的比特币扩展协议 ”的文章。它概述了所谓的“纽约协议”,表达了对激活SegWit和实施2 MB区块的承诺。代表58家主要比特币公司的规模限制,然后控制了散列能力的83.28%,并代表每月51亿美元的链上交易价值。尽管吸引了加密货币行业内的主要参与者的显着支持,但“SegWit2x”分支在其计划激活后的几天内被取消。
为什么比特币会分叉?
社区无法就增加区块大小的提案达成共识,导致用户激活了2017年8月比特币区块链的硬分叉。
虽然许多提倡改变区块大小限制的提案未能获得明确变更所需的支持,但交易费在2017年中期飙升。2015年8月,BTC的平均交易费仅为0.50美元。然而,截至2017年6月,中位数费用已增加10倍至约5美元。
在2018年8月1日,比特币现金(BCH)成功地从BTC分离出来,将比特币网络分成两部分。除了实现难度调整算法之外,BCH还引入了8MB的区块大小限制。
在2018年5月期间,BCH经历了一个硬分叉,将块大小增加到32MB。然而,它在11月的网络拆分中再次经历了一次硬分叉,看到了竞争对手的比特币SV的出现。最初支持128MB的块大小,比特币SV的Quasar升级在2019年7月进一步将最大区块大小提升到2GB。