深入理解比特币系列(3):Bitcoin Cash与Segwit2x

继续前面两讲的内容,Bitcoin Cash和Segwit2x是两种不同的比特币扩容方案,网络上虽有不少介绍这两种方案的文章,不过质量参差不齐,有些不免相互矛盾,造成理解困难。这里我希望可以用通俗易懂的语言来解释下。

SegWit2x是Bitcoin核心开发人员与矿工们妥协的方案

首先,需要了解的是Segwit2x并不单纯是技术本身,它是两大利益群体多次交涉最终妥协的结果。哪两大利益群体呢?Bitcoin Core和矿工。

Bitcoin Core:作为Bitcoin核心代码的开发团队,他们开发Bitcoin代码,所有的比特币节点都部署着他们开发的应用。他们在规则的制定上有很重要的话语权。

矿工:他们发布区块用以记录比特币的交易历史。矿工们的算力间接的决定着区块链的走向,如果更多的算力倾向于一种新的规则,则有可能导致系统产生硬分叉或者软分叉。

为了解决比特币扩容问题,Bitcoin Core团队提出了SegWit方案,其原理是在维持原有区块大小不变(1M)的情况下,将部分区块内容(交易明细)分开处理,从而提升每个区块的交易承载量。而矿工们则倾向于将原有区块大小直接扩容。举个现实中的例子:

假想一架核载200人的飞机可以允许旅客携带任意数量的行李并放在
座位上(抛开安全性考虑),如果平均每人携带行李数为三件的话,
那么200个座位平均承载旅客数为200/(1+3)=50位。这导致了大
量的旅客要么支付更高昂的费用拿到机票,要么排队等待后续航班。
为了提高运载量,航空公司想出了两种方法:
1.直接升级机舱空间,将核载200人的飞机扩容到核载400人。
2.将所有旅客行李托运,这样核载200人的飞机可以坐满200人。
前者对应矿工2x方案,后者对应Bitcoin Core的Segwit方案。

扩容问题讨论持续数年,直到2017年5月达成了纽约共识,即SegWit2x。字面上不难理解,就是既采用SegWit,同时区块扩容至2M。再继续我们刚才的例子:

两种提高承载量的方案在航空公司管理层中都有支持者和反对者,
一时无法达成一致。最后管理层多次交流妥协产生了如下第三种
方案:
3.升级机舱核载量一倍(400人)的同时规定旅客行李托运。
这一方案即对应SegWit2x。

Bitcoin Cash希望最大化保持原Bitcoin的机制

Bitcoin Cash不支持SegWit,从而在机制上更接近原始的Bitcoin。这也导致了究竟BTC还是BCC是未来真正比特币的激烈讨论。

Bitcoin Cash的原理是单独将区块扩容至8M。这里需要注意的是,8M是默认设置,未来,Bitcoin Cash的支持者希望可以实现区块大小的动态调整。

这里可以进一步阅读Bitcoin Cash是什么和为什么会诞生。

至此,关于最新的比特币发展现状我先介绍到这里。接下来我们从比特币的起源——那篇著名的白皮书开始学起。

原创文章,版权所有,转载请注明出处。