bitget消息:比特币扩容之争从2015年5月暴露在公众视野,到2017年11月纽约共识宣布中止,历时两年半,按照“币圈一日,人间一年”说法,算得上密码货币百年战争了。
比特币扩容受阻,造成比特币的拥堵和高手续费,从而引发竞争币暴涨、疯狂ICO、分叉币浪潮、公链大战、TPS大跃进……,尤其是BCH的诞生。一个在中本聪看来几行代码可以解决的简单问题,演化成了一场旷日持久,最终改变了比特币发展方向,改变了密码货币格局的战争。这是所有人都始料未及的。
这场战争十分复杂,时至今日,扩容之争的来龙去脉仍未明了。即使是亲历其中的人也只了解身边的局部,难以看清整个事态的演化。以至于基于不同的立场、语境和目的,对扩容之争相关事实和前因后果经常出现截然对立的表述,唇枪舌战之后往往无果而终。
本文力图理清扩容之争始末,以期化解纷争,也有助于理解密码货币发展的逻辑,更好地探索密码货币未来之路。也欢迎相关当事人审阅、批评和指正。【1】
一、扩容的缘由
比特币扩容之争的“扩容”意思是提高区块上限的“区块扩容”,是战争的核心。反对区块扩容一方提出的隔离见证也能够实现每块交易量增长30%的效果,而主链之外建立闪电网络也能处理更多交易,这些不是争论的焦点。为避免混淆,本文所说“扩容”指的是提高区块上限的“区块扩容”,而非各种有扩容效果的措施。
中本聪最初的代码对每个区块容量有最高限制32M,据说源于他的这段代码是从其他项目中借用的,原本带有32M的限制。比特币运行之后最初两年实际区块大小都在0.5K以内。在没有直接说明原因的情况下,中本聪于2010年7月设置了最大1M的区块容量限制。
2010年10月3日,早期开发者Jeff Garzik发帖建议将容量限制提高到7.1M。但此时区块实际大小仍在0.5k左右,中本聪回帖认为立即修改会导致软件版本不兼容(即后来所说的硬分叉),他建议在更新代码时,加入条件,在某个区块高度将区块限制提高,这样就能自然完成扩容,解决不兼容(分叉)问题。
在中本聪看来,当时交易量很小,没有提高限制的必要,但要为以后交易量增长做准备,在区块未满时,预先升级代码,提高区块容量。这在当时,大家都不觉得有问题。但在2015年却引发了影响深远的扩容之争。
二、意外的扩容难题
2010年12月维基解密宣布接受比特币捐助,中本聪认为这“捅了马蜂窝”,随后退出“公共生活”,将比特币开发的相关权限交给了他信赖的Gavin Andresen,并与Gavin保持了一段时间的私人通信。
Gavin接手开发管理权之后所做的第一件事就是分权,将代码开发管理权赋予另外4个开发者。2014年4月他将“首席开发者”身份和权限转给了Wladimir van der Laan,自己辞去比特币核心维护者身份,专注于软件开发,仅保留了比特币基金会“首席科学家”的身份。
Bitcoinj首席开发者Mike Hearn认为这几位核心开发者并不适合管理,是赶鸭子上架,只是为了保证Gavin有事时项目能够延续。但他强调,4名开发者中Gregory Maxwell有不同寻常的想法:“他曾声称,自己已经用数学方法证明了比特币不可能存在。更大的问题是,他不相信中本聪最初的构想。”Mike强调这一点至少说明Gregory Maxwell在Bitcoin Core中的特殊性,这可能是理解扩容之争的关键。
2014年8月, Adam Back 【2】,核心开发者Gregory Maxwell,以及企业家和投资者Austin Hill,核心开发者Pieter Wuille、Matt Corallo等合作创立了比特币技术公司Blockstream。该公司侧重于侧链技术,即可以有效地与比特币挂钩的替代区块链。2014年底和2016年初,Blockstream分别获得2100万美元的种子轮投资和5500万美元的A轮融资。按照Gregory Maxwell的说法,Blockstream就是为了比特币开发而建立的。
2013年2月Jeff Garzik的扩容帖再度被人顶起,此时区块已经达到150K,应当考虑扩容问题了。此后,关于区块上限、垃圾交易、硬分叉、手续费等主题的讨论开始了。
2015年1月区块实际大小已经达到0.3M,考虑到开发测试周期,扩容问题已经十分紧迫。但是,比特币核心开发团队内部一直未能达成区块扩容的共识。2015年5月初,Gavin公开提出正式建议:在2016年3月1日将区块限制扩大到20M。然而,这个提议并没有得到核心开发主导者的支持。
在由比特币核心开发者Wladimir van der Laan, Cory Fields, Luke Dashjr, Jonas Schnelli, Gregory Maxwell及包括blockstream在内的若干企业签名的信件中,署名者们声称自己致力于比特币的开发,服务于比特币社区,过去5年中完成了超过50次代码升级。考虑到比特币如此重要,他们要在保障安全的前提下考虑扩容。
在这封签名信中,缺少支持扩容的几位关键开发者:Gavin Andresen、Mike Hearn、Jeff Garzik。这暗示了在扩容问题上开发者内部的严重分歧。
响应Gavin的扩容建议,Jeff Garzik提出了比特币改进建议BIP100,建议矿池进行链上投票,超过75%算力同意既可以扩容。Gavin Andresen和Mike Hearn提出BIP101,建议先扩容到2M,然后每两年翻倍。在Bitcoin Core版本之外,Gavin和Mike开始在Bitcoin XT节点版本中实现20M扩容和BIP101。Bitcoin XT是Gavin在2012 年建立的与Core兼容的比特币全节点版本,为了扩容正在成为Core的竞争或替代版本。
对于Gavin的建议,公众看到的主要反对意见来自中国矿池,Gavin也专门到中国争取矿池支持。当时世界前5大矿池,中国占了4个。多数中国矿池认为中国网络带宽不足,大区块同步延迟更大,20M区块导致中国矿工挖矿相对国外处于劣势。因此,2015年6月Antpool,F2Pool,BTCChina,BW.com以及Huobi.com五大中国矿池达成共识,支持BIP100,反对BIP101,同意将区块扩大到8M。
然而,真正的扩容阻力并非来自矿工,而是来自开发者内部。Gavin在2015年5月的建议中提到了后来人们熟知的反对扩容的两个关键意见:
1)闪电网络和侧链等可以解决容量扩展问题; 2)区块增大要求更高带宽和存储导致节点中心化。
显然,Gavin的扩容建议在开发者内部讨论已经遭遇了反对,只是没有暴露在公众面前。最终成功阻止Gavin比特币扩容计划的不是矿工,而是部分核心开发者提出的“隔离见证+闪电网络”(SegWit+Lightning,或SW+LN)发展路线:通过实施隔离见证(SegWit)把交易签名跟交易本身分开,并置于区块之外,实现1)提高区块容纳的交易数量,2)消除部署闪电网络遇到的延展性技术难题,3)闪电网络可以容纳更多的交易。这样就不需要区块扩容了。
2015年2月Dryja和Poon发表了《比特币闪电网络:可伸缩的离线即时支付》,即闪电网络白皮书。2015年12月讨论扩容问题的香港会议上闪电网络引起关注。为了解决影响闪电网络的延展性问题,也为了实现部分扩容效果,2015年12月Core提出了隔离见证(Segwit)方案。随后,Gregory Maxwell(Blockstream公司CTO)将闪电网络写入比特币路线图,形成了“隔离见证+闪电网络”路线。只不过,此时Core并没有公开表示这个路线会完全取代区块扩容,没有明确反对区块扩容,而只是强调要安全谨慎地扩容。
至此,Gavin主推的区块扩容方案和掌握比特币开发主导权的Blockstream公司的core开发者之间的分歧已经形成。
三、言论管制与Bitcoin XT的失败
2015年下半年,随着区块实际容量中位数从5月Gavin建议扩容时的0.3M上升到12月的0.7M,扩容问题在社区的关注度迅速提高。首先反映在比特币的两个重要论坛:中本聪创立的bitcointalk.org和Reddit的bitcoin版,2015年Theymos担任这两个论坛的管理员。
2015年8月,主推区块扩容的Bitcoin XT在Reddit的r/bitcoin版引起热议。Theymos认为r/bitcoin陷入了混乱,宣布对其进行管制。Theymos强调,Bitcoin XT是对Bitcoin Core的分裂,将会是一个山寨币(altcoin),他反对这种分裂行为,并禁止讨论扩容相关问题,禁止发布Bitcoin XT相关的内容,封杀相关账号。
作为崇尚自由,一贯宣扬去中心化和反对管制的比特币社区,Theymos的发言和管制行动受到激烈的批评和抵制,但Core核心开发者对Theymos表示支持。言论管制,尤其是对区块扩容和Bitcoin XT支持者的压制在论坛中得到坚持贯彻。【3】
为了对抗言论管制,获得扩容问题的讨论空间。Roger Ver创立的bitcoin.com的CTO @MagmaHindenburg建立了Reddit的r/btc版。随后大量比特币扩容支持者从r/bitcoin转移到r/btc。目前,r/bitcoin版用户为1000k,r/btc版用户为254k。r/btc版在BCH诞生后成为Reddit上BCH的主版。这也使很多新人困惑,为何btc版讨论的都是bch?而r/bitcoincash版却只有43.3k用户,r/bch版只有2.5k用户?这是扩容历史原因造成的。
在这场媒体战中,Core凭借对bitcointalk.org和reddit/r/bitcoin,以及对官网bitcoin.org的实际控制取得了绝对优势。【4】甚至连美国最大、名气最响的比特币初创公司Coinbase也被比特币官网除名、被论坛禁言,因为它站在了“错误的”一边。
然而,最终给Bitcoin XT致命一击的是,压力之下Bitcoin XT内部的崩塌。2016年1月,Mike Hearn宣布“比特币已死”!
Mike是比特币资深开发者,与Gavin一起推进Bitcoin XT,面对1)Core和Blockstream对比特币开发权的控制、2)Theymos对社区话语权的控制、3)掌握优势算力的中国矿工对Core的忠诚,Mike绝望了。
Mike认为比特币这个去中心化的货币试验已经失败,因为系统已经完全被少数人控制,它变得拥堵、昂贵,无法与传统金融体系竞争,而让社区了解实情的渠道被完全控制了,这使得人们对真正的问题毫不在意,反而攻击提出问题的人。
Mike认为Bitcoin Core对扩容采用了拖延战术,而且非常有效。矿工和创业公司们拒绝Bitcoin XT最常见的理由是“我们在等Bitcoin Core在12月份扩容”。Core在2015年8月和12月举办的两次“扩容会议”都无果而终。此时Coinbase和比特币中国等主推扩容的公司才如梦初醒,发觉上当。
虽然Mike对新出现的Bitcoin Classic和Bitcoin Unlimited仍抱有希望,但他本人,面对困难已经失去信心,宣布比特币的根基已经崩塌,他已经卖掉所有的比特币,彻底离开比特币。
Mike的声明使他立刻成为比特币社区的公敌,对Gavin的声誉和扩容之路也造成不小的损害,Bitcoin XT的扩容版本失败。
四、Bitcoin Classic与香港共识
Bitcoin XT失败,但Gavin并未放弃推进扩容。深知无法推动Bitcoin Core扩容,2016年1月,Gavin与Jeff Garzik和Peter Rizun建立了一个新的开发组Bitcoin Classic。扩容进入Bitcoin Classic阶段。
由于区块实际容量快速增长,中位数达到0.7M,并频繁出现1M满块,扩容的紧迫性快速成为包括中国矿业在内的整个比特币社区的共识。绝大部分意见领袖和重要企业表达了对扩大区块容量限制的支持。
因此,Bitcoin Classic很快获得了Antpool和BW矿池在内的50%以上算力的支持,计划在算力支持达到75%是硬分叉升级至2M,以应对即将到来的拥堵。Bitcoin Classic硬分叉扩大容量与Bitcoin Core的SW+LN方案形成激烈竞争。
面对扩容呼声和Classic的竞争,Blockstream对Gavin、Bitcoin XT、Bitcoin Classic和中国矿工十分不满,其首席执行官Austin Hill说“一大批建立在比特币上的公司,享受着开发者社区的辛勤劳动成果,没有说声谢谢,反而说我不喜欢你的颜色,所以我要去抛弃你。”
在双方互不相让的情况下,整个社区开始出现对“硬分叉”乃至社区“分裂”的恐慌,当然,主要的恐惧分裂带来币价的崩盘!
2016年1月23日中国矿业聚会,达成所谓“92共识”:90%以上算力支持下扩容2M的共识,总体认同Bitcoin Classic的扩容主张,但提高共识要求(从75%到90%)。类比台海关系,强调以“不战争、不分裂”为前提实现扩容,戏称为“92共识”。
在聚会上,比特大陆CEO吴忌寒和haobtc CEO吴刚提出,各公司都应该派人参与比特币开发,培养自己的core开发人员,为比特币开发做贡献,也提升自己在core中的话语权,稀释Blockstream的影响力,这才是最终解决问题之道。
2016年1月28日Gavin提出了比特币改进建议BIP109,建议扩容到2M,75%的算力投票即通过实施。
在“92共识”和BIP109的基础上,为了避免分裂,2016年2月22日召开香港会议,中国矿工同几位Core开发者,以及Blockstream CEO Adam Back达成协议。【5】双方同意继续实施隔离见证软分叉,Core在隔离见证之后通过硬分叉将区块扩容到2M,并给出了时间表:2016年4月发布隔离见证;7月完成硬分叉代码;2017年7月在社区支持的前提下实施硬分叉升级。作为代价,中国矿业承诺只支持Core版本。这就是所谓“香港共识”。
五、Gavin失信黯然隐退
香港共识中,矿业妥协,抛弃了Core的重要竞争开发团队Bitcoin Classic,以换取Core的扩容承诺。
然而,香港共识并没有被Core履行。参加香港会议的Core成员回去后受到了指责,在香港共识协议上签字的Blockstream的CEO Adam Back签署了自己的名字,并未代表该公司。中国矿工感觉受到了欺骗,比特大陆吴忌寒在Twitter上警告Core,不会在没有2M硬分叉代码的情况下实施Segwit。
到了2016年5月,比特币区块中位数已经达到1M!手续费开始提高。然而,Core的Segwit并未按时发布。社区重启Classic的呼声再起。Gavin仍然是推动扩容的重要力量。但一个意外事件,彻底粉碎了Gavin的扩容之旅。
2015年底澳大利亚人Craig S. Wright(简称CSW)开始公开声称自己是中本聪。几乎每年都会出现类似的中本聪现身事件,但都是骗局或误会,影响不大。不过,在2016年5月扩容之争的关键时点,据说CSW向Gavin Andresen和当时的比特币基金会主席出示了某种证据,获得了两位的信任。Gavin公开宣称CSW就是中本聪,这是当时轰动一时的新闻。
BBC也展开了对CSW事件的报道。众所周知,自证中本聪最简单的方法就是证明自己拥有中本聪挖矿地址的私钥,方法至少有两种:一是按预先讲好的方式挪动中本聪的币,二是对一条新的信息用中本聪私钥进行签名,公开验证。
2016年5月3日CSW承诺将挪动中本聪的币,但5月4日在给Gavin和BBC记者当面操作时。他突然宣布比特币的一个早期安全漏洞会使他转移比特币面临巨大风险,Gavin告诉他这个漏洞已经解决,然而CSW突然离开房间,再也没回来。随后,发布了一篇道歉信,声称出于安全考虑不愿证明自己拥有中本聪私钥。【6】
然而,此后CSW在一篇讨论验证签名的博客中又给出了一个用中本聪早期私钥对萨特作品做的签名。只是不久就有人撰文揭露,该签名只是中本聪早期发送的一笔比特币交易的签名。【7】不仅如此,CSW还伪造了更多的证据,比如他修改了自己2008年的一篇旧博客,插入了“密码货币”内容,以证明自己那个时候就研究了密码货币。此处引用文献中有更多对CSW的揭露和质疑。
CSW在BBC上出尔反尔和假签名事件对Gavin和扩容造成致命一击。整个比特币社区都认为CSW是骗子,而Gavin成了骗子的帮凶,他和他为扩容做的一切努力都被蔑视,扩容本身也受到更多怀疑,Core占据了道德制高点。
就这样,Gavin失去了社区信任,不得不宣布退出Core开发组,彻底失去了在比特币开发方面的影响力,失去了对扩容的推动力。这是CSW对比特币的第一次重大影响。
目前不清楚究竟是什么让CSW获得了Gavin的信任。可以理解的是,在艰难的扩容之路上,Gavin确实太需要中本聪的支持了!
六、Bitcoin Unlimited的崛起
比特币区块拥堵之后,Core终于停止了拖延战术,公开反对区块扩容了。2016年5月,Core核心开发者Gregory Maxwell和Mark Friedenbach等人公开反对香港共识。曾经反对20M扩容,现在感觉被Core欺骗的中国矿工,开始取代他们曾反对的Gavin,成了扩容派的主要力量,这颇有些戏剧性。
在bitcointalk.org上,Gregory Maxwell斥责参加香港会议的Core成员是“笨蛋”(dipshits),他警告社区,尽管骗子CSW及其幕后支持者(暗指Gavin)已经消失,外部攻击减弱,但比特币社区自己削弱自己的能力不容忽视。从后续的发展看,Gregory Maxwell的影响力似乎超过了参加香港共识的Core成员的总和。事后进入Blockstream的Samson Mow也宣称,香港共识不存在毁约,因为参加会议的几名Core开发者不能代表Core团队。
对于Core对香港共识的出尔反尔,除了阴谋论之外,合理的解释是Core开发团队中Gregory Maxwell和Luke Dashjr等强硬派否决了Adam Back和多位Core核心开发者面在香港共识中的公开承诺。无论Adam Back等人怎么看,在做出妥协放弃Bitcoin Classic的中国矿工来看,这的确是欺骗!
鱼池王纯表示他被在香港共识上签字的Blockstream CEO Adam Back欺骗了。时任比特币中国COO的缪永权(Samson Mow)也批评Gregory低估了问题的严重性,这样做破坏了社区的合作。
2015年底,为了免受Core阻挠,推进区块扩容,Andrew Clifford、Andrew Stone、Peter Rizun等人组建了Bitcoin Unlimited(简称BU),2015年11月26日Andrew Stone发布了BUIP1,开始在Core控制的BIP之外组织开发。
总体上,BU延续了BIP100和BIP109的基本路线,允许矿工动态标注区块大小限制,通过矿工的“涌现共识” (Emergent Consensus)实现区块弹性扩容。2016年8月在收到50万美元捐助后,Bitcoin Unlimited注册为非营利组织。 【8】
Bitcoin Unlimited的出现理所当然地受到Core的抵制。2016年9月在Blockstream、BTCC、Kraken和Bitfury组织的扩容会议上,作为赞助商之一的BU提出四个提案,但都被拒绝在会议上发布。Bitcoin Core与Bitcoin Unlimited的战争已经开始。
2016年9月25日,扩容支持者们在San Francisco召开《中本聪愿景:开发与扩容会议》(Satoshi's Vision: Development and Scaling Conference)[9] ,会上重点由Bitcoin Unlimited成员介绍了BU路线及其主要改进:涌现共识、Xthin blocks,Xpedited Block Reply等。这次会议是自2016年6月以来,独立于Core的一系列扩容会议的一个高潮。参与和支持这一系列会议的包括Roger Ver、Jeff Garzik、Emin Gun Sirer, Peter Rizun, Andrew Clifford 、Amaury Sechet等人。Gavin Andresen 也明确表示支持BU。Bitcoin Unlimited不只是一个扩容版本,而是整个比特币扩容派高度期待的扩容希望。
跟Bitcoin Classic不同的是,BU很快获得了部分矿业力量的支持。2016年10月比特大陆参与投资的Viabtc矿池创始人杨海坡率先宣布支持BU。为了不受制于人,著名比特币早期投资人,被称为“比特币耶稣”的Roger Ver也创建了Bitcoin.com矿池,宣布支持BU。BTC.top矿池创始人江卓尔、比特大陆的蚂蚁矿池等也相继支持BU。
可以说,经过长期斗争,在认识到Core的拖延战术,尤其是香港共识受骗后,比特币社区形成了一个坚定的扩容派,他们不再相信Core,不再对Core妥协,不再惧怕分裂威胁,给予 Bitcoin Unlimited高度支持。决战时刻即将到来。
七、决战时刻与Bitcoin Unlimited的惨败
在明确反对区块扩容之后,Core的“隔离见证+闪电网络”路线更加明晰了:先通过软分叉实现隔离见证,然后上线闪电网络,以闪电网络承接主链的支付功能,实现广义的扩容 。【11】2016年11月,Core 开发组放出 Segwit 代码,12月21日提交BIP141并要求大家在11月19号开始投票,激活线95%,投票位是bit-1。
隔离见证的基本思想是把交易的签名与交易内容分开,并放在原区块之外。主要好处有三个:
1)消除交易延展性。交易与签名在一起的情况下,哈希出的交易ID可以在保证签名有效的情况下哈希出新的交易ID。对于依据交易ID判断转账是否成功的交易所和钱包,就可能被欺骗被重复提币,即所谓“延展性攻击”,Mt.Gox等许多交易所遇到过。采用隔离见证分离交易信息和签名,可以使交易ID唯一,消除延展性问题。 2)推进闪电网络。通过消除延展性,实现交易ID唯一,可以使闪电网络及其他一些应用的开发更加容易。 3)扩大30%容量。由于签名置于原区块之外,能够使1M区块容纳更多交易,相当于扩大了区块容量。据测算,可以增加30%容量,相当于区块扩大到1.3M,后来的实际情况确实如此。据说在测试环境下,最大能够扩容到4M。这成为Core支持者说隔离见证也是区块扩容的重要依据。
在香港共识失败之前,比特币社区对Core提出的隔离见证是普遍支持的。但在Core失信香港共识后,反对隔离见证的人增多,主要原因包括:
1)SegWit改变底层数据结构。隔离见证将签名与原始交易剥离,改变了比特币底层架构:交易和区块的结构。
2)SegWit强化开发中心化。隔离见证修改了大量的代码,使后续开发更加复杂而依赖于Core,降低了开发的去中心化;
3)SegWit更新不可逆。隔离见证类型交易一旦上链,整个系统就不能再废除隔离见证了,因为,这会导致所有隔离见证交易的资金丢失。
4)增加51%攻击风险。由于隔离见证交易在非隔离见证版本中是人人可花费的交易,随着隔离见证交易增多,发动51%攻击掠走隔离见证交易资金的潜在收益越来越大。
5)改变比特币发展方向。配合控制区块容量和实施闪电网络,Core推行隔离见证的目的是去除比特币主链的支付功能,使比特币的目标由货币变为结算网络。
6)错失牛市发展时机。当时牛市已经启动,区块扩容可以马上扩大容量,适应牛市市场需求,而通过隔离见证加闪电网络扩大容量则至少要“18个月”以上的时间。
社区的分歧点除了扩容和隔离见证之外,还有硬分叉。Core反对区块扩容的另一个理由是,直接提高区块容量上限需要硬分叉升级,即升级后的版本与之前版本不兼容,如果部分节点不升级将会导致区块链分叉成两个链。Core(尤其是Gregory Maxwell)认为这太危险,而隔离见证则通过软分叉升级来实现,更安全。
支持区块扩容的都支持硬分叉,因为这确实是必须的。但支持隔离见证的人也有很多支持硬分叉实现,因为隔离见证的代码规模本来就大,而软分叉为了兼容之前版本,又需要增加更多代码、更大复杂性。而且,长期来看,不断进行软分叉升级,会导致系统代码越来越复杂,技术债越来越重。
Bitcoin Unlimited崛起之后,一个更加严峻的分歧无法回避了:由于Core和坚定扩容派都不再妥协,能否接受比特币的分裂?这个问题跟扩容和硬分叉紧密联系,如果Core不妥协,扩容和硬分叉将会导致分裂。绝大多数社区成员是害怕分裂的,害怕由此带来的币价崩盘。
但是,扩容一方接受分裂的声音也逐渐增强。2016 年6月Meni Rosenfeld发表文章《我是如何克服分叉恐惧爱上分叉的》,8月Andrew Hinkes在链上扩容会议上借鉴以太坊分叉分析了比特币分叉的可能性,12月刘昌用发文认为矛盾的实质是世界货币和结算网络两条路线之争,难以调和,分叉各自探索是可行的解决方案,两个方向探索总体成功的概率更大。
到了2017年初,比特币牛市刚刚启动,在比特币网络交易拥堵,手续费增长10倍的情况下,扩容与分叉问题变得十分尖锐,期盼、恐慌、焦虑、愤怒等各种情绪弥漫社区。
此时,全球比特币社区围绕:1)是否支持区块扩容;2)是否支持隔离见证;3)是否支持硬分叉升级;4)是否信任Core;5)能否接受比特币分裂等这五个关键点,形成了复杂的格局。大体形成三个阵营:
1)Core及其坚定支持者。都支持隔离见证。其中极少数核心成员坚定反对区块扩容,Luke Dashjr甚至主张缩小区块到0.5或0.3M。不过,多数人仍希望扩容,只是坚定支持Core的所有决定;
2)坚定扩容派。支持BU,不信任Core,坚持硬分叉区块扩容,甚至不怕分叉。对于SegWit的意见并不一致,多数人在区块扩容的前提下愿意接受SegWit,少数人坚决反对SegWit。
3)统一中立派。他们支持区块扩容,部分支持硬分叉升级,大多支持隔离见证,不完全信任Core,也不完全信任BU。关键的是,他们坚信比特币只能有一条链,比特币无论如何决不能分裂!
2017年初Bitcoin Core和Bitcoin Unlimited的竞争白热化,通过区块投票,支持BU扩容和支持隔离见证的算力都未能达到30%。
面对僵局,隔离见证支持者Shaolin Fry提出更加激进的SegWit实施方案——“用户软分叉激活”(UASF),并于2017年3月12日形成正式提案BIP148。该提案建议开发者在新版本中设定隔离见证激活日期,节点更新至该新版本,无需算力投票,到期自动激活隔离见证。
UASF的关键是绕过矿工,算力不再有决定权。Shaolin Fry明确反对矿工(算力)决定共识规则,他对UASF的进一步修改中提出10月1日(后提前到8月1日)矿工将被要要求激活SegWit,否则挖矿无法获得区块奖励。缪永权是UASF坚定的支持者和宣扬者。
比特大陆吴忌寒坚决反对UASF,他认为没有算力支持的UASF将会导致分裂。随后,2017年3月蚂蚁矿池将全部算力切换至BU,BU支持率超过30%。BU在社区的支持率也快速提高。Core及其坚定支持者不再是多数派。
Gregory Maxwell并不赞成UASF,认为风险太大。但UASF对于希望绕过胶着的算力投票,尽快部署SegWit的Core支持者而言,这是一个很有吸引力的选项。3月24日著名的Bitfury矿池出块标记支持UASF。不过,更多矿业保持中立,包括当时在中国影响较大的吴刚的好比特币(现币信)和之前的世界第一大矿池鱼池。
然而,Core的最大优势在于连续的开发经验和技术实力,这是BU所缺乏的。并且,BU为扩容设计了复杂的弹性扩容,并加入Xthin等新的特性,增加了开发的复杂性。著名比特币技术专家,《精通比特币》作者Andreas Antonopoulos警告BU的共识系统和硬分叉存在风险,他宁愿支持Bitcoin Classic。
最终导致BU和扩容派惨败的正是BU的技术问题。
2017年2月2日BU的一个bug导致Bitcoin.com挖了一个孤块。由于Bug很快解决,没有更多孤块,负面影响不大。但接下来,3月14日的一个bug被人利用展开攻击,导致780个节点中的410个掉线,24小时后恢复;4月24日再次有70%BU节点因内存泄露而崩溃;5月8日再次受到攻击,又有大约70%的BU节点掉线。
这三次系统大面积故障,让几乎所有人失去了对BU的信心。社区情绪急转,大批中立派转向支持Core。鱼池在4月份开始投票支持SegWit,使SegWit算力支持也突破30%。坚定扩容派再次失去可以抗衡的比特币开发版本,再度陷入困境。
八、纽约共识:最后的妥协
2017年3月牛市启动,密码货币交易活跃,比特币的拥堵程度和手续费飙升。
正常情况下,为保证一笔交易在10分钟左右确认,比特币存储未确认交易的内存池体积应在1M以内,但3月份内存池体积已经达到74M,5月底达到157M,在12月拥堵的最高峰达到285M。 也就是说,3月份一笔新的交易平均要等待74个10分钟,即12小时确认,5月底要等待24小时确认,而12月份则平均要等2天2夜!
2016年1月区块未满时的交易费仅为月平均每笔0.58元。由于拥堵,2017年3月每笔交易费上涨到6.60元;6月上涨到19.81元;12月最高峰达到224元每笔!这还没有包括矿池定向打包一笔交易,收取的最高达上千元的“加速费”。曾经接受比特币支付的Dell、微软、Steam等纷纷放弃比特币支付。
面对拥堵和高手续费,市场中的交易者,尤其是套利交易者纷纷转向采用ETH、XRP和LTC进行转账。
从2017年3月到6月,ETH的价格从13美元飙升至385美元,翻了近30倍;XRP三个月翻了近53倍;LTC也翻了7.5倍;同期BTC只增长1倍。BTC市值占比从3月初的85%骤降至6月中旬的39%,而ETH此时则达到最高的31%。
有些人将2017年BTC市场的失利归咎于扩容一方,尤其是归咎于BCH的出现。但是,2017年6月,Bitcoin Unlimited已经失败,BCH还没有出现。比特币市场绝对优势的丧失完全是扩容失败造成的,是拥堵和高交易费赶走了用户。
扩容,刻不容缓!
为了打破僵局,重仓比特币的数字货币集团(DCG)创始人Barry Silbert在这个关键时刻站了出来,他跟业内的主要公司、开发者代表展开一系列一对一的沟通,斡旋和软化各方立场,计划5月份在纽约召开一次共识大会。
Blockstream的CEO Adam Back也答应参会当面磋商。但是Adam在临出行前被“另一个合伙人严厉的阻止”,宣布拒绝参加纽约会议,改由4月份才从比特币中国(BTCC)转投Blockstream的Samson Mow(缪永权)参会。而缪永权在业界声誉不佳,曾因在BTCC艰难时刻转投Blockstream,散布Purse收了吴忌寒30万美元,被吴刚当众质问。因此,一些重要企业声称,如果Samson Mow参会,他们将退出会议,为此,主持人Barry拒绝Samson参会。纽约会议在没有Blockstream和Core出席的情况下召开。
2017年5月21日纽约会议召开,来自22个国家,涵盖矿业、交易所、钱包、浏览器全产业链的58个公司代表参加了这次会议。作为参会者,吴忌寒在一年后的王峰十问中详细介绍了纽约会议详情。
纽约会议讨论的焦点在于:SegWit激活是否应该绑定硬分叉扩容,让两者同时进行。
为兼顾Core立场,Barry有意代表了不在场的Blockstream一方,希望大家可以同意先激活SegWit,把扩容的事情放一放。但是现场的大多数企业要求绑定在一起。例如Bitpay、Blockchain.info等都指出,目前的比特币扩容形势已经刻不容缓。如果不能绑定在一起扩容,他们的用户就会被迫持续支付高额的手续费,他们必须支持其他密码货币,如以太坊。还有企业说,如果今天不能达成条件彼此绑定的有效协议,就立刻退场。他们说,Core已经拒绝执行香港共识,我们为什么要在纽约重复制定一个香港共识?
Bitfury的代表也参加了这次会谈。Bitfury是一贯支持小区块立场的,但是令人惊讶的是,Bitfury的代表异常坚定地支持绑定一起扩容。那位代表认为,如果这么多企业一起达成共识,少数Core的极端小区块主义者,做不了什么,比特币扩容一定可以成功。
最后,在场的代表形成了共识,准备实施SegWit+2M绑定扩容的方案,也就是后来广为人知的SegWit2X。然而,一个微小的技术细节再次改变了事态的发展。
代表们在5月21日达成纽约共识(SegWit2X),并决定在算力投票字节的第4位,即bit-4标记支持SegWit2X。22日Barry将共识形成文档,并征集更多支持和签名,所以未参会的主要开发者和企业也得知了共识协议内容。
然而,22日晚上,在共识协议向公众公布之前,Core开发者James Hillard抢先提交了一个BIP91建议,该建议通过算力投票同意降低Core提出的无区块扩容的SegWit实施的原定95%的投票阈值,降低到80%,并可以根据情况再调整。关键是,算力投票的标记也设定为bit-4!
更重要的是,纽约共识约定的SegWit软分叉和2M扩容硬分叉的实施是有时间顺序的,先实施SegWit软分叉,两个月后再硬分叉扩容至2M。BIP91跟纽约共识的前半部分一样,都是激活SegWit软分叉,但BIP91没有后面的2M硬分叉扩容。借助相同的投票位,一些Blockstream的支持者就可以先假意按纽约共识投票,等SegWit实施后再宣称自己支持的是BIP91,而不是纽约共识,进而反对2M硬分叉扩容。后来,一些纽约共识签署者,比如鱼池也的确这样做了,鱼池王纯甚至公开声称,签署纽约共识就是为了“骗炮”!
用各种手段阻止扩容是Blockstream一直在做的事情,但为什么被香港共识欺骗的矿工仍然支持Blockstream呢?很重要的原因应该是Bitcoin Unlimited技术上的失败。
为了技术上的安全,很多人更愿意Core和Blocksteam继续主导比特币的发展。比如后来离开比特大陆的技术核心潘志彪,在直播中明确表示赞同扩容,但BU技术太差,所以还是支持Core。这是当时较普遍的观点。至于BTC与BCH分裂之后,很多人又逐渐接受Core的小区块和结算网络逻辑,不再主张扩容,那是后话了。
在Bitcoin Unlimited崩溃之后的纽约共识时期,比特币社区情绪正处在剧烈的变化中,其中一些人更加坚定支持区块扩容并不再相信妥协,一些人更加坚定支持Core和SegWit,但是大多数人正在厌倦扩容之争,希望尽快结束纷争,坚决反对分裂,保持比特币的统一,保护来之不易的大牛市。
在这种变化中,纽约共识一没有Core参加、二缺乏技术优势、三2M扩容无保障且仍可能导致分裂,这个共识十分脆弱,现在回头看注定是要失败的。
九、分叉的阴影
比特币分裂、BCH诞生的直接原因是纽约共识的脆弱性,且没有更可行的共识扩容方案了。但根本原因则是从扩容争论形成后不断扩大的社区分裂,而社区分裂背后是对比特币发展方向的重大分歧。
Gavin在2011年将比特币开发管理权分给另外4个开发者,又在2014年退出开发管理专注开发,但在2015年挺身推进扩容,这表明他跟Core已经产生重大分歧。
随着区块实际容量不断接近1M,2015年底两次扩容会议无果而终之后,Core的拖延战术逐渐被识破。Roger等坚定的扩容支持者建立了独立的r/btc论坛,并在2016年6月、8月、9月、11月召开了一系列独立于Core的扩容会议, David R. Allen和Alice在这些会议中起到重要的协调和组织作用,他们后来也是BCH国外社区的重要协调者。
在这些会议上,Bitcoin XT、Bitcoin Classic、Bitcoin Unlimited、Bitcoin ABC等开发团队进行了连续的沟通、讨论和协作,以推进扩容,其中Bitcoin Unlimited的影响较大。2016年6月的第一次会议参加者有Roger Ver, Jeff Garzik, Emin Gun Sirer, Peter Rizun, Andrew Clifford and Amaury Sechet等人。2016年11月30日的会议有吴忌寒参加。
2017年2月onchainscaling.com转向新网站thefutureofbitcoin.com,该网站继承原来的扩容方向,但有更广阔的视野。可以说从跟Core的扩容分歧深入到了发展方向的分歧。
在这几次会议上,有多人提出分叉或分裂可能是更好的解决问题方式。中国社区对这些会议了解很少。不过,2016年12月刘昌用的《扩容之争和比特币的政治经济前景》,在分析了技术、经济、政治和意识形态分歧之后,认为双方分歧的根源是方向和路线之争,分叉是更好的解决方式。刘昌用强调“一个去中心化组织要想永不分裂,跟一个中心化组织要想千秋万代一样幼稚”。江卓尔也赞同此观点。这跟国外扩容会议的演进不谋而合。
另一方面,经历了XT、Classic、香港共识和纽约共识之后,Blockstream和Core开发者绝不接受硬分叉区块扩容也已经是公认的事实。社区公众一直恐惧的分裂似乎难以避免了。
尽管区块扩容一度成为社区共识,但BU的失败给扩容努力造成重大损失。一些矿业转向支持Core。但矿业实力最强、资产最重的比特大陆吴忌寒从香港共识到Bitcoin Unlimited、纽约共识,已经成为最坚定的扩容支持者之一,在普遍接受“算力即权力”的时代尤其被重视。此外,江卓尔莱比特矿池和杨海坡Viabtc矿池,以及Roger的bitcoin.com矿池都坚定支持扩容。扩容派在算力方面占据明显优势。
BU的失败增强了Core和SegWit的社区基础。2017年4月莱特币主链顺利部署SegWit,验证了SegWit能够安全部署。4月初Gregory Maxwell公开声称,对“某制造商”的ASIC挖矿芯片的逆向工程显示,其秘密使用AsicBoost专利技术,该技术与软分叉部署SegWit不兼容。他认为这“解释了挖矿生态系统中有些人的一些令人费解的行为。”这显然说的是比特大陆和吴忌寒。这两件事提高了Core和SegWit的支持度和对比特大陆支持扩容动机的质疑。
由于SegWit已经成熟,而区块扩容Core与扩容派无法妥协,社区呼吁先部署SegWit的呼声越来越高。纽约共识先SegWit再扩2M也是这个背景下达成的,是妥协的重要原因。
在此背景下,绕过算力投票强推SegWit的UASF(用户激活软分叉,BIP148)的支持度也越来越高。但是Blockstream CTO Gregory Maxwell和比特大陆吴忌寒都反对UASF。理由一样:不顾算力意向在节点中设定时间激活SegWit,有可能造成硬分叉,即分裂成两条链。
支持UASF的节点数量快速增长
受UASF威胁最大的是扩容派。扩容之争上半场,Gavin领导的扩容派由于缺乏矿业的坚定支持而失利,下半场终于获得矿业主力的坚定支持,一旦绕过算力部署UASF,那么区块扩容又无望了。
为此,随着UASF制定的2017年8月1日强制实施SegWit的日期迫近,6月14日比特大陆宣布了应对UASF的紧急方案UAHF(用户激活硬分叉),即一旦UASF实施,将立刻实施UAHF硬分叉提高区块容量上限。对绝大多数恐惧分叉的人而言,可谓阴云密布。
十、BCH的诞生
BU失败后,扩容派的希望主要寄托在纽约共识的SegWit2x方案。SegWit2X项目由BitGo CEO Mike Belshe负责,原Core核心开发者、2010年提出扩容问题、曾跟随Gavin建立Bitcoin Classic的Jeff Garzik是主要开发者。
2017年6月17日纽约共识会议召集人Barry Silbert发推表示,80%算力支持纽约共识。中国矿业和交易所在成都区块链峰会期间也举行了圆桌会议,达成共识支持SegWit2X,这些企业包括比特大陆蚁池(Antpool)、Btc.top、币信、BTCC Pool、鱼池(F2pool)、火币(huobi)、币行(okcoin)、Viabtc、币网(BW)、1Hash、Canoe、Batpool、币看等。
然而,纽约共识先实施SegWit软分叉,两个月后再硬分叉扩大区块容量的妥协,以及绕过算力投票的UASF声音增强,给针对纽约共识的共识带来了很大的不确定性。这是比特大陆提出UAHF,警告UASF,防止纽约共识步香港共识的后尘的根本原因。
2017年6月30日,在荷兰阿纳姆召开了扩容系列会议的关键会议《比特币的未来会议》(The Futrue of Bitcoin Conference),演讲者分别来自BU(2人)、Bitgo、Bitcoin XT、Blockchair、Bitprim、Parity、Yours、Bitcrust、Gocoin等,以及比特大陆吴忌寒和Bitcoin ABC的两位开发者Amaury Sechet和Antony Zegers。
在阿纳姆会议期间,Bitcoin ABC的Amaury拿出了可以实行UAHF,将容量简单扩大到8M的比特币新版本。该版本得到参会者,尤其是吴忌寒的高度重视。会后Armaury、吴忌寒、杨海坡、BU、Roger等人远程讨论决定以此版本落实UAHF,以防备纽约共识失败。
7月中旬杨海坡在闪电黄世亮建立的Bitcoin Unlimited微信群里提出BCH分叉建议,获得多数人支持。但难点在于分叉后挖矿算力从何而来,这是真金白银的成本,曾考虑用当时火热的ICO方式筹资。刘昌用不赞同ICO,认为不容易定价和衡量投资回报,他建议杨海坡先在他的微比特交易所开通BCH期货,形成价格,有价格和销售市场,就会有矿工挖矿。
7月22日,杨海坡在微比特交易所(Viabtc)开通BCH期货,BCH支持者前往购买,BCH反对者前往销售,价格很快形成。由于其他交易所不支持BCH交易,用户涌入微比特交易所,使它一举成为当时仅次于火币和OKcoin的第三大交易所。由于BCH有了价格,其他交易所和钱包也不得不给用户分离BCH,进而上线BCH交易对。
到2017年8月1日,已经形成了BCH稳定的交易市场。随着Viabtc挖出了第一个BCH区块,随后江卓尔的BTC.top和比特大陆蚂蚁矿池等也加入挖矿,BCH诞生。
事后有人批评吴忌寒背叛纽约共识,这种判断一半出于误解,一半是恶意攻击。阿纳姆会议和筹备BCH的各方都支持纽约共识,扩容的主要希望寄托在Jeff的SegWit2X上。BCH分叉的意图是防止纽约共识失败,比特币偏离世界货币路线,起名Bitcoin Cash,而没有争夺BTC命名正是此意。 并且,BCH加入了重放保护,将其交易标记为与BTC不同的类型,防止对比特币系统造成混乱。也就是说,BCH是纽约共识的后备方案,并不是对BTC的攻击或取代。
事实上,BCH期货2017年7月22日上市, 8月1日完成分叉,BTC的价格从7月19日的1.56万上涨到1.93万,而BCH价格则在3000元左右。也就是说,BCH的出现既没有在网络上攻击BTC,也没有价格上的负面影响,分叉前持有的1个BTC的价格从1.53万元上涨到了2.23万,即1.93万的BTC加0.3万BCH。
相比之下,不加重放保护的UASF和一年后的BSV分叉对系统安全和市场的危害更加严重,因为这会造成分叉后两个链上的交易混乱,造成用户财产损失。2017年7月12日Core发布了对UASF可能导致分叉带来混乱的警告, BTC价格从1.65万下跌到1.32万,跌幅20%。2018年11月15日CSW针对BCH发起算力大战,最终分叉出BSV,且不加重放保护,扬言让BCH两年无法使用,导致BCH价格从4263元暴跌至597元,并带动整个密码货币市场坠入谷底。
顺便提一下,2017年6月30日CSW也突然在荷兰阿纳姆会议上露面。他大力支持Bitcoin Unlimited路线,反对Segwit,并称将筹措相当于全网20%的算力做non-Segwit矿池,用于在BTC主链干扰Segwit或硬分叉一条没有Segwit的链。这个攻击性很强的路线并未获得响应,他也没有参与BCH的发起,BCH运行一段时间后才出现在BCH社区。
可以肯定,在纽约共识失败之前诞生的BCH,无论从动机还是从实际影响来看,都不是对BTC主链的攻击,而是防备纽约共识失败、SegWit上线后BTC不再进行区块扩容的后备方案,当时支持者中有人称之为“备胎”,也不无道理。当纽约共识败相显露,BTC区块扩容无望后,大批扩容派才转向BCH。
十一、分叉币与BCH污名化
从BCH诞生至今,一直遭受污名化的攻击。这种攻击最早主要是因为一些人将分叉看做是对BTC的攻击。用二宝的话说对BTC的“分叉”就是“强奸”,后来的系列分叉币就是“轮奸”了。
有意思的是,BCH诞生之前,Core的支持者闪电矿机创始人廖翔把吴忌寒的UAHF看做是对主链的攻击,宣称吴忌寒敢分叉BTC,他就会分叉吴忌寒的新链,并组织了团队着手分叉。但看到BCH分叉后,BTC与BCH价格总价不跌反升之后,廖翔方向急转,转而分叉BTC创立BTG,并自己预挖20万BTG上市。
在廖翔对BTG宣传中,分叉的意义突变,BTG分叉BTC不再是攻击,而是作为BCH的竞争者,维护BTC的正统。廖翔借此获取大量Core支持者的呼应,在牛市获利丰厚,开创了后续一系列预挖分叉币热潮。
这些分叉币一方面预挖获利,一方面都宣称自己是BTC的支持者,同时攻击没有预挖的、因扩容而生的BCH,攻击吴忌寒。知名者除了BTG廖翔,还有LBTC的点付大头张银海等。“在LBTC创始人点付大头以及BTG创始人廖翔等人看来,分裂BTC产生BCH完全是吴忌寒和比特大陆维护自身矿霸利益的结果。”这是BCH误解的早期来源之一,并持续至今。
2018年熊市中廖翔宣布,将BTG交还给社区,其他分叉币也逐渐销声匿迹,其中比较著名的除了张银海的LBTC,还有李笑来预挖21万的SBTC(超级比特币)。
关于BCH的长期误解,除了认为BCH攻击了BTC和认为BCH发起者背叛了纽约共识之外,流传最广的就是将BCH看做比特大陆吴忌寒创立的密码货币,从而把BCH称为“忌寒币”、“矿霸币”、“公司币”,甚至“ChinaCoin”,等等。
回顾艰难扩容历史,不难理解,BCH实际上是从Gavin开始的扩容派成长的产物,伴随着BTC的拥堵和交易费的上涨,越来越多的人认识到区块扩容的重要性而支持扩容。经历了XT、Gavin、香港共识、BU的一次次挫折,形成了一个坚定的扩容派。BCH作为纽约共识后备方案的出现是扩容派共同推进的结果。
在BCH期货和现货交易开放后,尤其是纽约共识失败后,国内外坚定扩容派转向支持BCH,如Roger、Gavin等人。这给BCH带来持续买盘,推动价格的持续上涨,吸引算力挖矿,进而带动生态发展。这才使得BCH在很短时间内成为市值前四的主流币种。
国外早期大额持币者包括Roger、Checksum0等BTC持币大户换仓BCH起到了关键作用。这是市场综合博弈的结果,而不是“比特大陆拉盘”的结果,吴忌寒或杨海坡个人无力控制市场,他们只是顺势而为,在市场和形势发展的关键时刻,做了他们能做的那一部分,融入了坚定扩容派的集体行动。
吴忌寒本人虽然在香港共识前后成为坚定扩容派,但他并没有意图创造一个替代BTC的新币,也不是BCH的决策者。主要依据有:
1)吴忌寒从未反对SegWit,BCH诞生后仍主要支持纽约共识SegWit2X;
2)SegWit实施后,比特大陆在BTC上的矿机优势未受影响,Gregorg对比特大陆因AsicBoost不兼容SegWit而强推扩容的逻辑不攻自破;
3)纽约共识失败后,比特大陆被人冠以能控制51%以上算力的“矿霸”,却从未对BTC发动过算力攻击,甚至连对疯狂攻击BCH的BSV也只有算力防御,而未进行算力攻击;
4)吴忌寒一直主张“BTC是BTC,BCH是BCH”,主张各自发展,这在BCH社区中长期并非主流。纽约共识失败后多数BCH支持者认为BCH才是真正的比特币。
5)2017-2018年吴忌寒提出“缩短出块时间”、“挖矿抽水筹集治理基金”等重要建议均未获得广泛支持,没有付诸实施。
因此,所谓“忌寒币”、“矿霸币”、“公司币”是严重误解,是BCH污名化的重要表现,这些误解主要产生于:
1)扩容之争极其复杂,局内局外人都难窥全貌,人们看到吴忌寒提出了UAHF,杨海坡交易所率先上线BCH期货,Viabtc矿池挖出第一个区块,很容易对BCH标签化;
2)反对分叉者、反对区块扩容者和Core支持者乐于标签化和丑化BCH,以攻击扩容派和分叉支持者;
3)BCH给缺乏分叉经验的交易所、钱包等带来意外的冲击,甚至造成损失,比如理财售出BTC的商户,需要赔偿用户的BCH,在牛市中亏损很大,对BCH心存怨恨。
4)与比特大陆有商业利益摩擦的企业或个人也借此攻击比特大陆和吴忌寒。
对于大多数人而言,最重要的原因还是扩容之争过于复杂,社区分裂后,更愿意、更容易相信btc社区流传的标签化逻辑:“矿霸拉盘矿霸币”。
十二、BIP91“巧妙”获胜
随着时间的流逝,BCH的污名化留下了一个普遍的误解:BCH的诞生导致了纽约共识的终结。这个误解更恶意的版本是:吴忌寒背叛了纽约共识,导致纽约共识的失败。事实上,纽约共识失败的外因是Core对扩容的阻挠,内因是纽约共识的妥协:先上SegWit,丧失了主动权,无力硬分叉扩容。而BCH的兴起是纽约共识失败的结果,而非原因。
7月1日纽约共识SegWit2x团队正式发布了“里程碑意义”的公测版1.14.3。该版本采用bit-4 标记SegWit激活。在激活SegWit之后一段时间,将会自动激活2M。此时,“打算”信号支持SegWit2x的算力已经到达84.7%。
这个时间点存在三个相互冲突的解决方案:一是Core的95%算力投票激活SegWit方案(BIP141),二是绕过算力投票激活SegWit的UASF(Bip148)方案,三是纽约共识先激活SegWit再激活2M扩容的SegWit2X方案。到7月中旬Core的Segwit方案只有30%左右算力投票;UASF造成混乱的风险很大,受到Core和矿业的共同反对;纽约共识表面上看,具有明显的优势。
然而前文提到,标记纽约共识的bit-4在协商期间,被James Hillard提出的BIP91抢占,纽约共识与BIP91共用bit-4标记。而BIP91只包含SegWit,不包含2X扩容。标记bit-4的算力可以宣称自己支持的是BIP91,而非纽约共识。
最终,BIP91 获得了胜利。用缪永权的话说,James Hillard成了“救星”, 他提出一个“巧妙”的解决方案——BIP91:80%算力投票即可以激活SegWit,又能保持比特币完整。“巧妙”一词,在扩容派看来更像是“阴谋”,利用了纽约共识的妥协,用BIP91混淆算力投票,先激活SegWit,而后阻止2M硬分叉扩容,即鱼池王纯所谓的“骗炮”。这正是坚定扩容派提出UAHF和BCH所要防备的。
7月20日,bit-4投票位达到BIP91的目标,BIP91被锁定,两天后被激活。8月初BIP141的支持率也达到了100%。8月9日SegWit被锁定。此时,纽约共识真正的考验,与Core正面交锋以推进2M硬分叉扩容,才刚刚开始。
SegWit2X公测版发布后的7月3日,Core开发者Luke Dashjr便宣称SegWit2X是对SegWit的拖延,终将失败。他说,“4到8MB的区块容量是没有意义的。就算是1MB的区块对比特币来说也是很危险的。在任何情况下,他都不会赞同硬分叉,而是用软分叉来保证区块容量的合理性。但即使到了那个时候,他也不会支持这个方案(SegWit2x),”他支持BIP148(UASF)。
8月2日Adam Back认为SegWit2X应该推迟6个月,眼前应全力推进SegWit和闪电网络,避免再次出现分叉。
8月10日有消息显示,鉴于SegWit激活已经锁定,即将发布的Bitcoin Core 0.15.0客户端将不再支持SegWit2X节点,运行SegWit2X的节点将无法连接到Core 0.15.0版本的节点上。这是非常极端的做法,对SegWit2X的打击是致命的,因为如果Core版本保持主流,那么运行SegWit2X的矿池、钱包、交易所等将无法连接比特币网络。
8月中旬,纽约共识SegWit2X开发团队宣布,计划于区块高度494784实施2M硬分叉扩容,实际时间大概是11月17日。此后,针对SegWit2X的攻击更加激烈了。
8月17日Bitpay发布一个简单博文“下载btc1”(btc1是SegWit2X公测版本的名称),遭到包括闪电网络创作者Tadge Dryja和Bitcoin Core贡献者John Newbery在内的激烈批评。为此,比特币官网bitcoin.org将bitpay从网页上移除了。
同一天,Bitcoin Core在Github代码库将SegWit2X主要开发者Jeff Garzik除名。Core开发者Peter Todd解释到,这是因为Jeff Garzik反对Core在扩容问题上的立场,自从2014年起就从未对代码库作出重要贡献。Jeff Garzik认为他在这个关键节点上被除名是对他支持SegWit2X的报复行为。
SegWit激活之后,扩容之争双方的斗争白热化了。鉴于SegWit2X曾经获得的广泛支持和Core的强硬态度,尤其是Core 0.15.0的极端措施,很多人认为,如果11月份纽约共识按计划实施2M扩容,比特币网络将会再次分叉。为此,社区再次弥漫起分裂的恐慌。
十三、纽约共识的坍塌
实际上,SegWit激活之时,纽约共识SegWit2X就已经失败了。SegWit2X本来就是为了不分裂社区而对Core支持者所做的妥协。SegWit激活之前,扩容派还可以用支持SegWit作为换取2M的谈判条件。SegWit既然已经激活,还拿什么换取对硬分叉2M支持呢?没有可交换的资本,坚持2X就只能分裂,那么“不分裂”这个共识基础就会崩塌。所以,纽约共识的失败已成必然!
SegWit激活之后,面对态度强硬、控制代码库、官网和主要论坛的Core支持者,加之对分叉的恐惧,原本看似主流的纽约共识开始坍塌。8月24日,签署了纽约共识的公司Bitwala,宣布不再支持纽约共识,反对从Core的区块链版本进行硬分叉。
为缓解社区对分叉的恐惧,Jeff Garzik强调SegWit2x的目标是升级比特币,成为比特币,而不是创造竞争币。面对分叉恐惧带来的巨大社区压力,SegWit2X再次做出重要妥协:在Github的btc1版本中添加了选择性的重放保护,并建议写入代码库。这一建议被批评毫无用处。这个妥协及其失败对SegWit2X是个非常糟糕的预兆。
在8月底9月初,签署纽约共识的多数企业仍然支持SegWit2X,8月28日bitpay宣布支持SegWit2X,BTCC和Bitfury也表示依旧支持SegWit2X。但Slush Pool联合创始人Marek Palatinus表示由于担心硬分叉,他们不愿做出决定。
在这个关键时点,此前多次在支持SegWit和扩容之间出现反复,并且签署了纽约共识的鱼池(F2Pool)王纯再次宣布反戈,他给比特币门户网站Coindesk发送电子邮件宣称“我并不支持Segwit2x硬分叉。”尽管鱼池的算力份额处在快速下降中,但作为曾经的最大矿池,其表态具有重要的影响力。纽约共识的坍塌正在加速。
9月15日,Bitcoin Core 0.15.0正式发布,不支持SegWit2X节点,摊牌的时刻到了,所有节点必须在Core和SegWit2X之间做出选择。
为了反对SegWit2X,Core支持者发起了No2X活动。莱特币创始人Charli Lee反对SegWit2X,9月30日宣称愿意以SegWit2X的250BTC换No2X的250BTC。SegWit2X的坚定支持者Roger Ver宣布接受要约。并接受了其他三人相同的要约,总计1000BTC。
2017年9月4日之后,国内交易所遭遇滑铁卢,位于香港的Bitfinex一举成为最大交易所。针对即将出现的比特币分裂,10月5日,bitfinex效仿Viabtc的BCH分叉期货,宣布上线分叉币期货bt1(core版本)和bt2(SigWit2X版本)。
有了BCH分叉的经验,许多公司对可能到来的分叉持中立态度,宣布在分叉中会保护用户利益,承认各种分叉币。10月8日Coinbase宣布支持SegWit2x硬分叉的所有比特币,并在硬分叉之前不会公布对命名的选择。SPV钱包Bread也表示将决定权交给用户。
为此,比特币官网Bitcoin.org公开谴责支持SegWit2X的公司,警告由此带来的硬分叉风险,并列出了一份涵盖全球众多知名企业的“黑名单”,包括:
Abra、 Bitcoin.com、BitPay、BitPesa、Blockchain.info、BTC.com(比特大陆)、Circle、 Coinbase、Coins.ph、GoCoin、Jaxx、Luno、Ripio、Unocoin、Xapo、ANX、Bitex、bitFlyer、Bitso、BTCC(比特币中国)、BTER.com、Coinbase、Coins.ph、CryptoFacilities、Korbit、Safello、SFOX、ShapeShift、1Hash、Bitcoin.com、Bitfury、Bitmain(比特大陆)、Bixin.com(币信)、Genesis Mining、ViaBTC(微比特)、Bitangel.com(郭宏才)、BitClub Network、Bloq、Civic、Decentral、Digital Currency Group、Filament、Genesis Global Trading、Grayscale Investments、MONI、OB1、Netki、Purse、Veem。
Bitcoin.org不仅警示了硬分叉给稳定带来的风险,还强调,一旦SegWit2X硬分叉,支持SegWit2X的服务商“就退出了比特币系统”。
十四、纽约共识的终结
到10月下旬,SegWit2X项目负责人Bitgo的Mike Belshe和主要开发者Jeff Garzik均表示SegWit2X硬分叉扩容正在全力推进按照11月中旬实施SegWit2X的计划,企业不得不准备分裂的预案,其中最难的是,一旦分裂,对Core0.15和SegWit2X(BTC1)哪个链和币命名为“比特币(bitcoin)”。
10月23日,Coinbase发布公告,先是宣称会暂时命名SegWit2X为bitcoin2x,如果后者被“用户”广泛接受,则将其命名为bitcoin。但很快修改为“将挖矿难度最大的链命名为bitcoin”。 这个修改不难理解,因为“用户”决定是个很模糊的概念,“挖矿难度”则是一个更具体的标准,符合白皮书最长链原则。Bitpay、Shapeshift、Xapo等也宣布支持此标准。他们的立场遭到r/bitcoin用户的激烈抨击,以至于Shapeshift的CEO Erik Voorhess认为正在遭受r/bitcoin的迫害。BTCC的CEO李启元(Bobby Lee)以及Coinable、Xapo等企业也表示支持SegWit2X。李启元的观点受到他弟弟李启威(Charlie Lee)的尖锐批评。
11月初曾被公认为比特币杀手级应用的电商交易平台OpenBazaar宣布,不再支持纽约共识(SegWit2X),声称当时签署纽约共识是为了确保SegWit能够尽快被部署。而Civic公司的Vinny Lingham也宣布退出纽约共识,理由是“收到了死亡威胁”。另一家签署纽约协议的公司Bitso联合创始人Daniel Vogel也声称SegWit2X支持率正在下降,如果支持率低于50%,就不应该挖这条链了。这些企业的退出和动摇,表明纽约共识的根基正在崩塌,纽约共识表面上也已经不再是主流。
11月9日,SegWit2X项目主要负责人BitGo CEO Mike Belshe以邮件形式宣布中止SegWit2X:“很不幸,很明显我们这一次未能建立足够的区块大小升级共识。继续当前的路线可能会分裂社区并阻碍比特币的发展。这绝不是Segwit2x想要的结果。”联合签署此声明的还有:Xapo CEO Wences Casares、比特大陆吴忌寒、Bloq CEO Jeff Garzik、Blockchain CEO Peter Smith和Shapeshift CEO Erik Voorhees。
纽约共识SegWit2X正式终结。
纽约共识(SegWit2X)失败的根源是其脆弱妥协的本质,迎合了“不分裂+扩容”的大多数,但没有真正动摇反对区块扩容的Core的社区根基,反而是先上SegWit而失去谈判底牌。SegWit部署之后,形成“扩容”必须“分裂”的被动局面,最终失去了社区的支持。
2017年8月1日诞生的BCH对SegWit2X失败的影响很小。只有坚定扩容派中,极少数认为分歧不可调和、能够接受分裂、预料纽约共识的脆弱妥协将会失败的人,在BCH出现伊始就从纽约共识转向支持BCH 。而包括吴忌寒、Roger、杨海坡等绝大部分扩容派,只是将BCH作为防止纽约共识失败的后备方案。江卓尔明确表示支持BCH作为竞争币,但不希望BCH分散纽约共识的力量。
别忘了,纽约共识的基础是在“不分裂(不分叉)”前提下“扩容”。所以纽约共识支持者大多数是反对BCH的。比如支持纽约共识到最后的著名钱包商Xapo在BCH诞生后,宣布不支持BCH,并将替用户分叉所得的所有BCH兑换成BTC。 这个过程造成BCH价格30%多的跌幅。
实际上在纽约共识从8月中旬到11月初逐渐式微的过程中,BCH并没有获得更多的支持,其价格从8月19日最高758美元持续下跌至10月下旬的320美元左右,跌幅接近58%。只有在11月初前后,纽约共识败相渐露后,BCH价格才开始上涨。11月9日SegWit2X宣布中止到11月12日3天内,BCH价格从625美元飙升至1600美元,上涨156%。主要原因是纽约共识失败,迫使能够接受分叉并坚持扩容的少数派转向支持BCH。后备方案成了区块扩容的唯一可选方案。
纽约共识失败后,对绝大多数支持者而言,区块不扩容比特币也仍然是比特币,而不会支持BCH。只有极少数坚定扩容派认为BTC偏离了市场和中本聪梦想,改变了发展路线,从而转向了BCH。这是名副其实的“少数派”,从诞生到现在,BCH的企业数和社区规模都远远小于BTC。所以,不是BCH诞生导致纽约共识成败,而纽约共识的失败造就了BCH。
十五、扩容之争回顾
纽约共识终结标志着扩容之争结束。区块扩容这个原本公认的简单问题变成一场战争,从2015年5月暴露于公众,到2017年11月终结,历时两年半,可谓旷日持久。
区块扩容派最早的代表是Gavin。Gavin退场后有Bitcoin Unlimited、Roger Ver、Mike Belshe、Jeff Garzik、BTCC、吴忌寒等人(机构)。
扩容派的基本主张就是区块扩容。逻辑非常简单:比特币交易需求的增长要求提高区块上限。在带宽和存储增长上百倍,而交易需求快速增长的情况下,这个诉求简单而又紧迫。SW+LN扩容复杂、漫长、变数多。区块扩容刻不容缓,其他都是次要的。为此,扩容派能够接受32M、20M、8M、2M、SegWit+2M,等等。总之,只要区块扩容,其他都能接受。
战争的另一方常被称为Core派。但是Bitcoin Core开发者有上百名,并不都反对扩容。之所以反对扩容者被称为Core派,是因为反对扩容的声音在Core这个集体中起到了决定作用。
当时掌握合并代码权限的开发者Wladimir van der Laan十分谨慎,对扩容不做任何决定。在扩容之争中态度坚决,并起到关键作用的是Blockstream的CTO Gregory Maxwell,他痛斥签署香港共识的Core开发者们,导致香港共识失败。此后,Blockstream CEO Adam Back爽约纽约共识会议,受Maxwell影响的可能性也非常大。由于Adam Back、Gregory Maxwell及另外两个Core开发者建立了Blockstream,并反对扩容,因此人们也把Blockstream看做反对扩容的主体。不过,Blockstream之外也有core开发者坚决反对扩容。比如Luke Dashjr。
无论如何,Core作为一个整体从主要声音到实际行动是反对区块扩容的, 因此,将反对扩容的一方称为“Core派”(Bitcoin Core及其支持者)是合适的,目前找不到更好的词来概括。Core派反对区块扩容的原因主要有三个:
1)大区块会减少全节点数量,降低系统抗审查能力。持此观点的代表人物是Luke Dashjr,他认为比特币的区块限制甚至应该缩小到300K。
2)区块扩容所需的硬分叉风险太大。这是Gregory Mexwell反对扩容的主要依据,为此他也反对可能导致硬分叉的绕过算力投票升级SegWit的UASF。
3)区块扩容会阻碍Blockstream的链外业务拓展。Blockstream作为商业性公司,其业务定位是比特币的“侧链技术”。通过区块简单扩容到32M或8M,比特币主链在数年内能够满足市场需求,对侧链的需求不大。限制区块大小符合Blockstream基本的生存逻辑。
对于第一点小区块抗审查逻辑,适应市场需求扩大区块容量,交易规模和社区规模会增长,商业利润自然会刺激生态内企业或个人增加投入,运行更大的全节点。区块扩容带来的收益完全能够弥数据增长带来的负担,考虑到存储和带宽的技术进步和价格下跌更是如此。
对于第二点硬分叉顾虑,紧急情况下的硬分叉升级在比特币系统中并不少见,持续两年半的扩容之争带来的危害远远超过几次硬分叉升级,尤其是2017年拥堵时期进行扩容硬分叉升级符合所有人的利益,如果得到core的支持几乎没有任何阻力和风险。
对于第三点Blockstream的切身利益,Core中的扩容反对者和Blockstream当然不会承认。但对于一个拿了7600万美元商业融资,主要力量从事无直接汇报的比特币核心开发的商业公司而言,控制主链容量,以获得侧链业务,这是公司早日盈利,回报投资者,弥补巨大日常开支所必须的。
从双方力量看,扩容派主要的力量来源主要是市场需求。从2015年5月到2017年10月比特币的市场交易需求不断增大,尤其是2017年3月之后高拥堵和高手续费成为推动扩容的主要力量。相对而言,Gavin的早期声誉、中国矿业的中期加入和生态企业的后期支持都是次要力量,后两者实际上是市场力量推动的结果。
Core派的力量来自多个方面:
1)Core对比特币开发的实际控制权;
2)通过bitcointalk、r/bitcoin和bitcoin.org官网对社区舆论的实际控制权;
3)借助Blockstream公司实现的中心化组织能力。
4)Core自身具备和开发中积累的技术优势;
5)Core志愿开发获得的道德优势;
6)比特币社区追随正统的社会惯性。
两种力量的较量过程可谓跌宕起伏:
第一阶段是Core内部分歧时期。2015年5月之前是目前外界了解不多的Core内部的博弈,显然失去代码主导权的Gavin等人无法说服Core扩容,并且产生尖锐分歧,以至于Gavin决定以Bitcoin XT推进扩容,与Core分庭抗礼。
第二阶段是Gavin主导的XT扩容时期。Gavin在2015年5月向社区公开扩容建议,并多方奔走推进扩容。虽获得一定支持,但在bitcointalk和r/bitcoin遭遇严厉的言论控制。而此时Core采取了拖延战术。Gavin的合作者Mike看到Core拒绝扩容和强大控制力,对去中心化道路失去信心,愤然宣布比特币已死,导致XT失去社区支持。XT扩容失败。
第三阶段是Gavin主导的Classic扩容时期。Gavin与Jeff Garzik、Peter Rizun建立Bitcoin Classic,在市场推动下获得了矿业的广泛支持。但是,由于矿业害怕分叉,以抛弃Classic为代价换取Core支持扩容,达成香港共识。Core的决策力量拒绝香港共识,而Gavin因CSW假中本聪事件身败名裂,Classic扩容失败。
第四阶段是Bitcoin Unlimited扩容时期。此时Gavin已退场,但市场推动的扩容基本成为社区共识,除了Blockstream之外的大多数企业都支持扩容。但BU的弹性扩容和一些新的功能较为复杂,技术实力不足,支持扩容的很多人担心BU的技术。最终,BU因为四次大的技术问题和外部攻击而失败。
第五阶段是纽约共识SegWit2X扩容时期。扩容共识依然强烈,但扩容错过了最佳时机,纽约共识的先上SegWit的妥协交出了最后一张底牌。SegWit实施后为避免分裂,社区最终倒向了强硬的Core派。比特币区块扩容终结。
第六阶段是BTC和BCH双链并存时期。作为扩容之争的副产品和纽约共识的后备方案,BCH在比特币扩容失败后,最终承载了扩容派延续中本聪点对点电子现金路线的梦想,在遭受广泛误解、被污名化、标签化的恶劣环境下继续前行。
BTC扩容失败还导致整个密码经济格局的重大调整。先是2017年3月因BTC拥堵,交易所和钱包充提交易先后转向ETH、XRP和LTC,导致这些老牌竞争币价格暴涨,随后资金溢出到小蚁(现在的NEO)此类边缘币种。财富效应制造了对新币的强烈需求,刺激量子链为代表的新链ICO,暴富效应不仅激励了更多公链ICO,还从公链蔓延到各种区块链项目,6月前后带来ICO神话,衍生出“通证经济”浪潮。而BCH分叉后BTC与BCH总价上涨,激发了IFO分叉币浪潮。ICO和IFO对金融秩序的负面影响引来中国9月的严厉监管,资源溢出国外,国内无币区块链的兴起。这些影响积极地看激励了密码经济的多层次多领域探索,消极地看削弱了去中心化密码货币的发展,使密码经济陷入金融投机泡沫,不利于密码经济根基的构建。这里重点关注扩容之争,就不再展开分析了。
大结局
从扩容之争的最终结果看,Core派在取得了战争的胜利,比特币区块扩容被终止,比特币在完成隔离见证之后,全力朝向闪电网络、Liquid等主链外交易发展。在2017-2018年,比特币社区仍然延续比特币的货币性质,强调隔离见证和闪电网络带来的扩容效果。但SegWit扩容效果达到30%后再难增长了,而闪电网络在多版本钱包上线和火炬传递活动掀起一轮热潮之后,实际应用推进缓慢。但也没有阻止2019年上半年比特币价格的率先回升。此时,BTC社区终于总体接受了Core派设定的路线,全面扭转了比特币的功能定位,不再强调扩容,不再强调BTC的货币支付功能,而是强调价值存储功能,将比特币称为“数字黄金”。
至此,扩容之争的路线分裂才算真正完成:BTC限制容量走向以价值存储为核心功能的大宗投资品;BCH保持去中心化密码货币目标,继续迎合市场需求推进支付功能。投资者的青睐推高了比特币的价格,而Bitpay、Openbazaar等早期比特币的各种支付应用也逐渐转向了BCH,可谓各得其所。此时回看扩容之争会显得更加清晰:BTC承接了比特币之名,但改变了比特币的方向;BCH承接了比特币的方向,但失去了比特币之名。