Skip to content
区块大小

对比特币区块大小之争的一些思考

作者:维塔利克·布特林 2024年5月31日 原文链接

最近我读完了(或者说,听完了)两本主要记录2010年代比特币区块大小之争的历史书籍,它们分别代表了争议的两个对立面:

阅读这两本关于我亲身经历过的事件的历史记录非常有趣,而且我在某种程度上还参与其中。虽然我了解大多数发生的事件,以及双方各自对冲突本质的叙述,但仍然有一些我不知道或完全忘记的引人入胜的细节,用全新的视角重新审视这种情况很有意思。当时,我是一个"大区块支持者",不过我持务实的中等区块立场,反对极端增加区块大小或绝对主义地认为手续费永远不应该显著高于零的说法。我是否仍然支持我当时的观点?我很期待看看并找出答案。

在 Jonathan Bier 的叙述中,小区块支持者是如何看待区块大小之战的?

在区块大小之战中,最初的争论围绕着一个简单的问题:比特币是否应该通过硬分叉将区块大小限制从当时的 1 MB 提高到更大的值?这样做可以让比特币处理更多交易,从而降低手续费,但代价是使运行和验证节点变得更加困难和昂贵。

"【如果区块大小更大】,你需要一个大型数据中心来运行节点,而且你将无法匿名运行"——这是Peter Todd 赞助的一个视频中主张保持区块大小较小的关键论点。

从 Bier 的书中给我的印象是,虽然小区块支持者确实关心这个具体技术问题,倾向于采取保守方法,只适度增加区块大小以确保运行节点的便利性,但他们更关心的是一个更根本的问题:这类协议层面的问题应该如何做出决策。在他们看来,对协议的修改(特别是"硬分叉")应该非常少见,且需要协议用户达成极高程度的共识。

比特币并不是要与支付处理商竞争——这样的机构已经有很多了。相反,比特币试图成为一种更加独特和特别的存在:一种全新类型的货币,摆脱中心化组织和中央银行的控制。如果比特币开始拥有高度活跃的治理结构(这对于处理有争议的区块大小参数调整是必需的),或者变得容易受到矿工、交易所或其他大公司的协同操纵,它将永远失去这个珍贵的独特优势。

在 Bier 的描述中,大区块支持者之所以最令小区块支持者反感,恰恰是因为他们经常试图召集相对少数的大型参与者共同合作,以使其偏好的变更合法化并得以推行——这与小区块支持者关于治理应该如何进行的理念背道而驰。

2017年由比特币主要交易所、支付处理商、矿工和其他公司签署的纽约协议。这是小区块支持者眼中试图将比特币从用户治理转变为企业集团治理的一个典型例子。

在 Roger Ver 的描述中,大区块支持者是如何看待区块大小之战的?

大区块支持者通常关注一个关键的基础性问题:**比特币应该成为什么?**它应该是一个价值存储——数字黄金,还是支付手段——数字现金?对他们来说,从一开始就很清楚,最初的愿景,也是所有大区块支持者认同的愿景,就是数字现金。这甚至在白皮书中就有明确说明!

大区块支持者还经常引用中本聪写的其他两件事:

  1. 白皮书中的简化支付验证部分,其中谈到一旦区块变得很大,个人用户可以使用默克尔证明来验证他们的支付是否已被包含,而无需验证整个链。

  2. 一个比特币论坛引用支持通过硬分叉来逐步增加区块大小

对他们来说,从数字现金转向数字黄金的转变是一个重大转向,这个转向是由一小群核心开发者达成共识的,他们认为既然自己已经思考过这个问题并在内部达成了结论,就有权利将自己的观点强加给整个项目。

小区块阵营确实提出了一些解决方案,让比特币同时作为现金和黄金使用——也就是说,比特币成为专注于充当黄金角色的"第一层",而建立在比特币之上的"第二层"协议(如闪电网络)则在不需要每笔交易都上链的情况下提供廉价支付。然而,这些解决方案在实践中都显得极其不足,Ver用了好几个章节深入批评这些方案。例如,即使所有人都转向使用闪电网络,为了接纳数亿用户,最终仍然需要增加区块大小。此外,在闪电网络中无需信任地接收币需要运行在线节点,而且为了确保资金安全,需要每周检查一次链上数据。Ver认为,这些复杂性将不可避免地推动用户以中心化的方式使用闪电网络。

他们观点的关键区别是什么?

Ver对于客观层面争议的描述与小区块支持者的看法一致:双方都认同小区块支持者更重视运行节点的便利性,而大区块支持者更重视低廉的交易费用。双方都承认在这个问题上存在合理的观点差异,而这种差异正是引发辩论的关键因素。

但是Bier和Ver对于更深层次问题的描述却截然不同。在Bier看来,小区块阵营代表着用户,对抗着试图为己所用控制区块链的少数但强大的矿工和交易所联盟。通过确保普通用户能够运行节点并验证区块链,小区块能够保持比特币的去中心化。而对Ver来说,大区块阵营代表着用户,对抗着那些自封的教主和风投支持的公司(特别是Blockstream)。这些公司通过开发小区块路线图所必需的layer 2解决方案来牟利。大区块通过确保用户能够继续负担得起链上交易,而无需依赖中心化的layer 2基础设施,从而保持比特币的去中心化。

我所能看到的双方最接近"就辩论条件达成一致"的情况是,Bier 的著作承认许多大区块支持者是出于善意的,甚至认可他们对支持小区块的论坛版主审查反对意见的不满是合理的,但经常批评大区块阵营能力不足。而 Ver 的著作则更倾向于将恶意甚至阴谋论归咎于小区块支持者,但很少批评他们的能力。这呼应了我多次听到的一个常见政治现象:"右派认为左派天真,左派认为右派邪恶"。

在我的叙述中,我是如何看待区块大小之战的?现在我又是如何看待它的?

Room 77,柏林一家曾接受比特币支付的餐厅。它是Bitcoin Kiez(比特币街区)的中心,在柏林的这个区域,大量餐厅都接受比特币支付。不幸的是,比特币支付的梦想在过去十年后期逐渐消退,我认为不断上涨的手续费是其中的一个关键原因。

当我亲身经历比特币区块大小之战时,我通常站在大区块支持者这一边。我同情大区块阵营主要基于以下几个关键点:

  • 比特币最初的一个关键承诺是数字现金,而高额手续费可能会扼杀这一应用场景。虽然二层协议理论上可以提供更低的手续费,但整个概念都未经充分验证,考虑到小区块支持者对闪电网络在实践中的表现知之甚少,他们坚持小区块路线图是非常不负责任的。如今,闪电网络的实践经验使得悲观的观点变得更加普遍

  • 我并不认同小区块方所谓的"元层面"论述。小区块支持者经常声称"比特币应该由用户控制"以及"用户不支持大区块",但他们从未愿意明确界定"用户"是谁,或如何衡量用户的意愿。大区块支持者曾隐性地提出过至少三种统计用户的方式:算力、知名公司的公开声明和社交媒体言论,但小区块支持者对每一种方式都予以否定。大区块支持者组织纽约共识并非因为他们喜欢"密谋",而是因为小区块支持者坚持任何有争议的变更都需要"用户"之间达成"共识",而签署利益相关方声明是大区块支持者所能想到的唯一可行方式。

  • 与简单的硬分叉区块大小增加方案相比,小区块方采用的隔离见证提案在增加区块大小方面显得过于复杂。小区块方最终形成了"软分叉好,硬分叉坏"的教条(对此我强烈反对),并据此设计了他们增加区块大小的方案。尽管Bier承认这严重增加了复杂性,以至于许多大区块支持者无法理解该提案。我认为小区块支持者并非只是"支持谨慎",他们是在任意选择不同类型的谨慎,为了符合他们的议程而选择一种(不硬分叉),却牺牲另一种(保持代码和规范的简洁性)。最终,大区块支持者也放弃了"清晰简单"的原则,转而采用比特币无限的自适应区块大小增加等想法,对此Bier(正确地)对他们进行了严厉批评。

  • 小区块方确实在社交媒体审查方面采取了非常不光彩的行为来强加他们的观点,最终导致 Theymos 说出了那句臭名昭著的话:"如果90%的 /r/Bitcoin 用户觉得这些政策无法容忍,那我希望这90%的 /r/Bitcoin 用户离开。"

    即使是相对温和的支持大区块的帖子也经常被删除。他们使用自定义 CSS 来使这些被删除的帖子变得不可见
    Ver 的书主要关注第一点和第四点,也部分涉及第三点,以及一些关于财务动机不当操作的理论——即小区块支持者成立了一家名为 Blockstream 的公司,该公司将在比特币之上构建第二层协议,同时主张比特币第一层应该保持受限制状态,从而使这些商业性的第二层网络成为必需。Ver 没有过多关注比特币应该如何治理的哲学问题,因为对他来说"比特币由矿工治理"这个答案就已经足够了。这是我与双方都不同意的地方:我认为模糊的"我们拒绝实际定义的用户共识"和极端的"矿工应该控制一切因为他们有一致的利益"这两种观点都是不合理的。

同时,我记得对大区块支持者的几个关键观点感到极其不满,这些观点在 Bier 的书中也有所提及。其中最糟糕的一点(无论是按照我还是 Bier 的观点)是大区块支持者从未愿意就区块应该增大到什么程度达成任何切实可行的限制原则。一个普遍的观点是"区块大小应该由市场决定"——这意味着,矿工可以随意设定区块大小,而其他矿工可以选择接受或拒绝这些区块。我强烈反对这一观点,并指出将这种机制称为"市场"是对市场概念的过度延伸。最终,当大区块支持者分裂出自己的独立链(比特币现金,Bitcoin Cash)时,他们最终放弃了这种观点,并添加了32 MB 的区块大小限制

当时,我实际上确实有一个关于如何决定区块大小限制的原则性思路。引用2018 年的一篇文章

比特币倾向于最大程度地保证读取区块链的成本可预测性,代价是写入区块链的成本可预测性降到最低,这在前者方面可预见地取得了非常健康的结果,而在后者方面则产生了灾难性的结果。以太坊则通过其当前的治理模式,在这两方面都保持中等程度的可预测性。

我后来在2022年的一条推文中重申了这一观点。本质上,这个理念是:我们应该在提高写入链的成本(即交易费用)和读取链的成本(即节点的软件要求)之间取得平衡。理想情况下,如果使用区块链的需求增加100倍,我们应该将压力平均分配,让区块大小增加10倍,费用增加10倍(交易费用的需求弹性接近于1,这在实践中是切实可行的)。

以太坊实际上确实采取了适中区块大小的方案:自2015年推出以来,链的容量大约增加了5.3倍(如果计入calldata重定价和blobs,可能达到7倍),同时费用从几乎为零增长到一个显著但不过分的水平。

然而,这种折中的(或称"凹性")方法从未得到任何一方的认可;也许对一方来说太"中央管控"了,对另一方来说又太"优柔寡断"了。我认为大区块支持者比小区块支持者在这里更应负责;小区块支持者最初确实愿意适度增加区块大小(例如Adam Back的2/4/8计划),而大区块支持者却不愿妥协,他们很快就从主张单次增加到特定的更大数值转变为主张一种总体理念,认为任何对区块大小的实质性限制都是不合理的。

大区块支持者还开始主张矿工应该掌管比特币——对于这种理念,Bier通过指出如果矿工试图改变协议规则去做一些除了增加区块大小之外的事情(比如给自己更多奖励),这些支持者可能会很快放弃他们的观点,从而有效地批评了这种理念。

Bier的著作中对大区块支持者的一个主要批评点是他们反复表现出的无能。Bitcoin Classic的代码写得并不好,Bitcoin Unlimited则不必要地过于复杂,长期以来他们没有包含清除保护,似乎也不理解这个选择严重损害了他们成功的机会(!!),而且他们还存在严重的安全漏洞。他们大声疾呼需要多个比特币软件实现——这是我赞同的一个原则,也是以太坊已经采用的原则——但他们的"替代客户端"实际上只是Bitcoin Core的分叉,仅仅改变了几行代码来实现区块大小的增加。在Bier的叙述中,他们在代码和经济学方面反复出现的错误最终导致越来越多的支持者离开。主要的大区块支持者竟然相信Craig Wright欺诈性地声称自己是中本聪,这进一步损害了他们的信誉。

Craig Wright,一个冒充中本聪的骗子。他经常用法律威胁来打压批评声音,这就是为什么我的分支成为了记录他造假证据的"Craig邪教"仓库中最大的在线副本。不幸的是,许多大区块支持者都落入了Craig的把戏中,因为Craig迎合了大区块派的路线,说了一些大区块支持者想听的话。

总的来说,在阅读这两本书时,我发现在宏观问题上我更常同意Ver的观点,但在具体细节上更认同Bier的看法。在我看来,大区块支持者在"区块需要更大"这个核心问题上是正确的,而且最好是像中本聰描述的那样,通过一个简单明了的硬分叉来实现这一目标。但小区块支持者在技术层面上犯的错误较少,并且他们的立场即使推导到逻辑结论,也较少会导致荒谬的结果。

区块大小之战作为一个单方面的能力陷阱

通过阅读这两本书,我得到的综合印象是一个政治困境,这种困境我在各种环境中都反复看到过,包括加密货币、企业和国家政治:

一方垄断了所有有能力的人,但利用其权力推行狭隘和有偏见的观点;另一方正确地认识到存在问题,但陷入专注于反对的困境中,未能发展出自己的技术执行能力。

在许多这样的情况下,第一组经常被批评为独裁,但当你询问其(通常为数众多的)支持者为什么支持它时,他们的回应是另一方只会抱怨;如果他们真的获得权力,几天之内就会完全失败。

在某种程度上这并不是反对派的错:如果没有执行的平台和获取经验的机会,要变得善于执行是很困难的。但在区块大小争议中,大区块派似乎甚至没有意识到具备执行能力的必要性——他们认为仅凭在区块大小问题上立场正确的纯粹力量就能获胜。大区块支持者最终因为专注于反对而不是建设付出了沉重的代价,这体现在多个方面:即使当他们分叉出自己的链(比特币现金,Bitcoin Cash)时,他们最终还是在社区稳定下来之前经历了分裂

我将这个问题称为单向能力陷阱。对于任何试图建立一个民主或多元化的政治组织、项目或社区的人来说,这似乎都是一个根本性的问题。聪明人往往希望与其他聪明人共事。如果两个不同的群体实力大致相当,人们自然会倾向于选择更符合自己价值观的一方,这种平衡状态是可以维持的。但一旦局势过度倾向某一方向,就会转变为另一种平衡状态,而要扭转这种状况似乎极其困难。在某种程度上,通过反对派认识到问题的存在并有意识地提升自身能力,可以缓解单向能力陷阱。然而,反对派运动通常连这第一步都难以实现。有时候,仅仅认识到问题的存在是远远不够的。我们迫切需要更加健全和深入的方法来预防和摆脱单向能力陷阱。

更少的冲突,更多的技术

在这两本书中,有一个令我尤为震惊的重大遗漏:"ZK-SNARK"这个词在两本书中均未出现过。这是不应该被忽视的:即使在2010年代中期,ZK-SNARK及其在可扩展性(和隐私性)方面的革命性潜力就已广为人知。Zcash于2016年10月启动。ZK-SNARK在可扩展性方面的意义在2013年曾被Gregory Maxwell简单探讨过,但在讨论比特币未来发展路线图时似乎完全没有被考虑进去。

缓解政治紧张局势的终极方案不是妥协,而是新技术:发现能够同时让双方都获得更多利益的全新方法。我们在以太坊中已经看到了几个这样的例子。以下是几个值得一提的案例:

  • Justin Drake推动采用BLS聚合,使以太坊的权益证明机制能够处理更多的验证者,从而将最低质押金额从1500降至32,且几乎没有什么负面影响。最近,签名合并的研究有望将这一进展推向更远。
  • EIP-7702实现了ERC-3074的目标,且其方式与智能合约钱包有着更好的前向兼容性,从而帮助缓解了一个长期存在的争议。
  • 从blob实施开始的多维gas,已经帮助提升了以太坊存储Rollup数据的容量,同时又不会增加最坏情况下的区块大小,从而将安全风险降到最低。

当一个生态系统停止接纳新技术时,它必然会陷入停滞,同时也会变得更具争议性:在"我多得10个苹果"与"你多得10个苹果"之间的政治辩论,天然比"我放弃10个苹果"与"你放弃10个苹果"之间的辩论引发的冲突要少得多。损失带来的痛苦要比获得带来的快乐更强烈,人们更倾向于为了避免损失而"打破"他们共同的政治公地。这也是为什么我对去增长这类想法以及"我们不能用技术解决方案来解决社会问题"这种观念感到相当不适的关键原因:有充分的理由相信,为谁赢得更多而争斗,确实比为谁损失更少而争斗更有利于社会和谐。

在经济理论中,这两个囚徒困境没有区别:右边的博弈可以被视为左边的博弈加上一个独立的(无关的)步骤,即无论两个玩家如何行动都会损失四分。但在人类心理学中,这两个博弈可能有很大的不同。

比特币未来的一个关键问题是,比特币能否成为一个技术导向的生态系统。Inscriptions和后来的BitVM的发展为Layer 2创造了新的可能性,改进了闪电网络所能实现的功能。希望Udi Wertheimer关于ETH获得ETF意味着Saylorism的终结的理论是正确的,这将重新让人认识到比特币需要在技术上进行改进。

我为什么关注这个问题?

我关注比特币的成功与失败经验,并不是为了贬低比特币来抬高以太坊;事实上,作为一个热衷于理解社会和政治问题的人,我认为比特币在社会学层面上足够复杂是一个特色,它内部可以产生如此丰富和引人入胜的争论和分歧,以至于你可以写两本完整的书来讨论这些。相反,我关注分析这些问题,是因为以太坊以及其他我关心的数字(甚至物理)社区,都能从理解这些经历、成功之处以及可以改进之处中学到很多。

以太坊对客户端多样化的重视,源于观察到比特币仅有单一客户端团队所带来的失败。它对L2实现方案,源于理解比特币的局限性如何导致在其上可构建的各类L2的信任属性受限。更广泛地说,以太坊明确试图培育多元化生态系统,很大程度上是为了避免单一视角下的能力局限。

另一个浮现在脑海中的例子是网络国家运动。网络国家是一种新型的数字分离战略,允许具有共同价值观的社群从主流社会获得一定程度的独立,并构建他们对文化和技术未来的愿景。但是(分叉后的)比特币现金的经历表明,围绕分叉来解决问题的运动存在一个共同的失败模式:它们可能会一次又一次地分裂,最终无法实现真正的合作。比特币现金的经验教训远远超出了比特币现金本身的范畴。就像叛逆的加密货币一样,叛逆的网络国家需要学会真正地执行和建设,而不是仅仅举办派对、随意社交,以及在 Twitter 上分享将现代野兽派与16世纪欧洲建筑进行对比的 Meme。Zuzalu 在某种程度上是我自己试图在这个方向上推动变革的尝试。

我建议阅读 Bier 的《区块大小之战》和 Patterson 与 Ver 的《劫持比特币》来理解比特币历史上的一个决定性时刻。特别是,我建议带着这样的心态阅读这两本书:这不仅仅关乎比特币——相反,这是"数字国家"的第一次真正的高风险内部分裂,这些经验对于我们在未来几十年将要建立的其他数字国家来说都带来了重要的启示。

ETHStudy (An Ethereum Ecosystem Initiative)
Supported by Uweb(University of Web3)