BIP 110 是个糟糕主意的 110 个理由

@saylor
英语2天前 · 2026年7月18日
1.2M
3.9K
694
729
909

TL;DR

Michael Saylor 反对拟议的 Bitcoin 软分叉 BIP 110,他认为该提案破坏了协议的中立性,并因利用共识规则过滤特定类型数据而开创了危险的先例。

中立规则、硬共识、开放市场与无需许可的创新——一个论证案例

我尊敬的许多比特币支持者都支持 BIP 110。他们希望保持验证的可访问性,保护节点运营者免受不必要的成本和内容影响,维持可负担的支付,并让比特币专注于健全货币,而非通用数据存储。这些都是严肃的关切。我同意这些目标,但在解决方案上存在分歧。(GitHub

本文批评的是提案本身,而非其背后的作者。我假设对方出于善意。比特币最强大的地方在于,我们能够激烈地争论,而不会将盟友误认为敌人。

本文也不是为每一种铭文、代币、文件或应用辩护。其中有些可能是无聊的、有害的或欺诈性的。问题更窄:一个存在争议的、使用当前有效且支付费用的交易行为,是否应通过改变共识来解决?

以下理由的重要性各不相同,且部分相互支撑。论证是累积性的。

BIP 110 提案内容

本文讨论的是 BIP 110 1.0.0 版本,即 "减少数据临时软分叉",于 2026 年 6 月 25 日进入 "完成" 状态。根据 BIP 3,"完成" 意味着作者完成了计划中的工作并建议采纳。这并不意味着比特币已采纳该提案,或社区已达成共识。BIPs 仓库明确指出,发布并不代表该提案是好的、已获得社区共识,或即将被采纳。(GitHub

在大约一年的有效期内,BIP 110 将增加七项共识限制。它将限制新的 scriptPubKey 为 34 字节,OP_RETURN 有 83 字节的例外;限制许多推送的负载和脚本参数的见证数据项为 256 字节;禁止花费未定义的见证版本和 Tapleaf 版本,同时仍允许创建此类输出;禁止 Taproot 附录;将 Taproot 控制块上限设为 257 字节;拒绝包含 OP_SUCCESSx 操作码的 Tapscript;以及拒绝执行 OP_IF 或 OP_NOTIF 的 Tapscript。(GitHub

该提案对激活前创建的非交易输出进行了祖父条款保护。这是一个重要的安全措施。我并不声称 BIP 110 会广泛没收现有的比特币。我的反对意见更窄:它前瞻性地移除了当前有效的交易功能,可能影响跨越激活期的罕见预签名工作流程,减少了技术可选性,并开创了一个先例,即使用共识限制来阻止一类本来有效的用途。(GitHub

BIP 110 还提出了一种修改后的 BIP 9 部署方式。它使用 55% 的矿工信号阈值,而 BIP 9 规定为 95%;取消了传统的超时和 FAILED 状态;增加了一个强制信号期;保证在指定高度前在强制执行链上锁定;并在 52,416 个有效区块后增加了一个新的 EXPIRED 状态。(GitHub

与任何软分叉一样,BIP 110 并非由中央机构强加。用户选择要执行的软件和规则。风险在于,当具有经济重要性的参与者执行实质上不同的规则时,会产生压力、不确定性或链分裂。

作者提供了参考实现、测试向量、详细理由以及对权衡的坦诚讨论。这些都是该文档的实质性优点。该提案认为,紧急性和临时期限证明了较低阈值以及故意简单、粗暴的限制是合理的。我尊重其关切和工作。我不同意其风险计算。(GitHub

一、中立性与首要原则

1. 共识是比特币最强大的干预手段。 软分叉使得先前规则下有效的区块对升级节点变为无效。这种权力应保留给明确、严重且被广泛理解的故障。

2. 它不是对已确立的共识故障的修复。 BIP 110 不修正通胀、签名验证、双重支付或已知的关键漏洞。它解决的是一个有争议的外部性和用例,因此举证责任应特别高。

3. 它将一个有争议的判断提升为协议法则。 该提案将关于合法使用和外部性的争议,从中继策略、挖矿策略和市场,转移到了共识有效性上。

4. 比特币无法读取意图。 网络无法知道字节代表的是图像、证明、合约、元数据、认证记录还是未来的应用。

5. 结构性代理会产生附带风险。 由于意图无法得知,该提案限制了可能服务于既不受欢迎又合法的目的的技术形式。

6. 社会信息不足以构成改变共识的理由。 规范明确将激活视为传达数据存储不受欢迎的一种方式。共识应因令人信服的技术或货币原因而改变,而非主要为了表达不赞成。(GitHub

7. 不赞成不等于无效。 一笔交易可以是琐碎的、投机的、冒犯性的或浪费的,但仍然遵守规则并支付了包含所需的费用。

8. 它缩小了 BIP 110 链上未来的经济自由。 激活前的 UTXO 受到祖父条款保护,但在激活期间创建 UTXO 的用户,其构建和花费这些 UTXO 的有效方式将比现有共识更少。

9. 无需许可的系统必须容忍未经批准的实验。 要求创新者在构建之前证明其用途有价值,这颠倒了无需许可创新的含义。

10. 它把协议保守主义颠倒了。 基础层的保守主义应意味着不愿改变共识,而非渴望改变共识以支持某种保守的使用哲学。

二、举证责任尚未满足

11. "垃圾信息" 不是共识原语。 没有操作码可以区分垃圾信息和实用信息。这些标签源于人类判断。

12. "货币" 和 "非货币" 并非清晰可分。 支付通道、储备证明、托管策略、智能合约或结算承诺,既是金融活动,也是数据。

13. 已知用例并非完整的设计空间。 该提案称它保留了所有已知的货币用例。创新的定义在于尚未知晓的事物。

14. BIP 本身并未量化它将移除的节点负担。 它描述了成本,但未估算相关的带宽、存储、验证负载、硬件阈值或可能增加或减少的节点运营者数量。

15. 它未量化去中心化的收益。 关于 BIP 110 将改善去中心化的说法,并未配以可衡量的模型或目标。

16. 它未量化支付的缓解。 它未估算交易费用会下降多少、持续多久,或有多少支付用户会受益。

17. 它将不同的成本合并为单一诊断。 UTXO 状态增长、初始同步带宽、归档存储、中继负担和验证时间,原因各不相同,可能需要不同的解决方案。

18. 紧迫性是被断言而非操作性定义的。 该提案称情况紧迫且处于危机之中,但未提供共识干预变得必要的客观阈值。

19. 历史上的中继策略限制并非最优共识限制的证明。 83 字节的默认值可能是有用的策略,而不会成为永恒的区块有效性规则。

20. 256 字节的限制是启发式的。 其理由部分与压缩图像大小和大型密码学整数相关,但未确立 256 字节是安全与创新之间的最优边界。(GitHub

三、技术范围过于宽泛

21. 七项独立的共识变更被捆绑在一起。 参与者不能支持一项限制而拒绝另一项。他们必须接受或拒绝整个包。

22. 最强烈的技术关切与不相关的限制捆绑在一起。 大型 scriptPubKey 会增加 UTXO 状态和验证成本。如果这造成了可衡量的危害,它本身就应该有一个范围狭窄的提案,而不是自动获得另外六项限制的支持。(GitHub

23. 83 字节的 OP_RETURN 策略变成了共识。 这将一个可配置的中继和挖矿偏好,转变为一个区块有效性规则。

24. 256 字节限制约束了通用原语。 它通过限制广泛的推送负载和脚本参数的见证数据项,来针对数据存储。

25. 花费未定义的见证版本和 Tapleaf 版本将被禁用。 这些空间今天未被使用,部分原因是它们被保留给未来的升级。

26. Taproot 附录将被禁用。 BIP 341 保留附录用于未来的扩展。即使用户在其含义被定义之前不应使用它,关闭一个蓄意的升级路径也需要特别的理由。(GitHub

27. Taptree 深度将减少。 257 字节的控制块上限将已揭示的脚本路径限制在七层,并可能约束复杂的脚本树。

28. OP_SUCCESSx 即使在不执行的分支中也将被禁用。 BIP 342 创建这些操作码作为未来软分叉的干净升级钩子。(GitHub

29. 在 Tapscript 中,执行的 OP_IF 和 OP_NOTIF 将被禁止。 作者认为它们是冗余且常被滥用的,但也承认实验性用途和可能的 Miniscript 效率提升。

30. 该提案公开接受以粗暴换取速度。 其理由称,更平衡的方法需要更多的开发和审查,因此它选择了旨在更快部署的更简单限制。在共识代码中,紧迫性不能替代精确性。(GitHub

四、它牺牲了兼容性和未来的可选性

31. 它同时关闭了多条升级路径。 附录、未来的见证版本、未来的 Tapleaf 版本和 OP_SUCCESSx 都是比特币预留设计空间的一部分。(GitHub

32. 预留并不意味着无用。 这意味着早期设计者特意为尚未出现需求保留了期权价值。

33. 一年的关闭期仍可能打乱开发时间表。 作者预计未来的软分叉需要超过一年的协调,但这只是估计,并非保证。

34. 它可能使 BitVM 风格的设计复杂化。 规范承认控制块限制可能阻碍高级链下合约。

35. 它可能影响 Miniscript 生成的 Tapleaf。 该提案承认某些编译器输出可能包含 OP_IF 并需要调整。

36. 它要求受影响的钱包工具进行更改。 向后兼容性部分指出,Miniscript 编译器在规则生效期间需要修改。

37. 它创造了一个狭窄但已承认的资产访问风险。 BIP 坦诚地识别了罕见的预签名 Taproot 场景,其中激活后的 UTXO 可能被冻结或意外花费。

38. 祖父条款保护有价值,但并非完全隔离。 激活前的 UTXO 受到保护,但在部署期间创建或花费受影响输出的工作流程仍可能遇到新的约束。

39. 建议用户迁移可能受影响的资金。 一个要求甚至一小部分用户迁移的提案,并非没有成本的过滤器。

40. "没有已知用例" 不是安全证明。 私有系统、未发布的合约、实验性钱包和未来协议并非完全可观察。(GitHub

五、临时共识规则仍会带来真正的复杂性

41. 临时共识代码仍然是共识代码。 它必须被规定、实现、审查、测试、部署、监控,并最终退役。

42. 祖父条款使有效性依赖于历史。 相同的花费构造,可能因 UTXO 创建时间的不同而受到不同对待。

43. 依赖历史的规则增加了实现复杂性。 每个实现都必须识别相关的 UTXO 创建高度,并一致地应用豁免。

44. 激活创造了一个关键边界。 软件和经济参与者必须就新限制何时生效达成一致。

45. 过期创造了另一个边界。 他们还必须就限制何时结束以及先前受限的行为何时再次变得有效达成一致。

46. BIP 110 增加了一个新的 EXPIRED 状态。 这以新的共识行为扩展了熟悉的部署状态机。

47. 它移除了传统的 FAILED 结果。 提议的部署不能简单地以普通的 BIP 9 方式超时。

48. 它创造了多个协调窗口。 自愿信号、强制信号、锁定、激活和过期,每个都引入了分歧的机会。(GitHub

49. 临时规则可能留下永久性工件。 钱包代码、操作流程、合约和机构风险控制可能需要比部署更持久的更改。

50. 更多的共识分支意味着更多的错误 surface。 测试向量降低了已知风险,但无法枚举每一个私有或未来的交互。

六、经济和安全性影响不确定

51. 节点外部性是真实的,但具有异质性。 每个全验证节点必须下载并验证区块,而修剪节点可以丢弃旧的原始区块数据并限制历史存储。相关成本应分别衡量。(Bitcoin Core

52. 费用接收者问题并非数据交易独有。 矿工收取费用,而验证者为每笔交易承担部分成本。程度可能不同,但基本结构是普遍的。

53. 技术成本应直接衡量。 对于给定数量的数据和验证工作,资源成本来自字节、状态、计算和带宽,而非观察者是否认可交易的目的。

54. BIP 110 无法消除数据嵌入。 规范承认用户可以将数据分割成更小的部分,或将其伪装在允许的结构内。(GitHub

55. 规避可能使交易效率更低。 碎片化或混淆的编码可能消耗更多结构并复杂化分析,而不会消除底层需求。

56. 费用影响是模糊的。 抑制一种使用可能降低支付费用、减少总费用收入、将需求转移到其他编码,或产生这三者的某种组合。

57. 随着补贴减少,矿工收入变得更加重要。 交易费用是区块奖励的组成部分之一,而区块补贴每 210,000 个区块减半。(Bitcoin Developer Docs

58. 较低的总费用需求可能在边际上削弱安全性。 如果 BIP 110 减少了总费用需求(而非仅仅重新分配),在其他条件相同的情况下,较低的矿工收入可能减少投入算力的激励。

59. 多样化的需求可以使费用市场更具弹性。 支付、通道、托管系统、金融应用和其他用途不必同时达到峰值。

60. 该规范未对安全性权衡进行建模。 它主张更便宜的支付和更低的节点成本,但未估计对矿工收入、算力投资或长期费用市场深度的可能影响。

七、存在更好的市场与策略工具

61. 比特币已经有一个内容中立的容量限制。 区块权重对每个区块的交易容量施加了共同限制。(GitHub

62. 费用已经对稀缺的区块空间进行配给。 用户通过竞价表达紧迫性,矿工根据自身策略选择有效交易。

63. 区块限制和费用市场不要求用户声明目的。 它们应用技术有效性和资源限制,而非对交易是否足够"货币化"进行语义测试。

64. 中继策略仍然是一种较不具强制性的工具。 实现和节点运营者可以选择中继哪些未确认交易,而无需重新定义有效区块。Bitcoin Core 的数据载体策略是可配置的。(GitHub

65. 挖矿策略仍然是自愿的。 矿工可以在自己的区块模板中排除某些交易类别,而无需迫使每个验证节点拒绝包含这些交易的区块。

66. 策略是不完美的,但不完美并非失败。 直接向矿工提交可以绕过中继过滤器。这一限制值得分析,而非自动跃升至共识禁止。

67. 没有交易拥有被包含的权利。 矿工可以根据自身策略拒绝一笔交易,但使一笔先前有效的交易在分叉中变得无效,是后果严重得多的行为。

68. 资源定价可以在不分类目的的情况下改进。 如果某些结构造成了不成比例的成本,比特币可以研究中立的内容限制或与可衡量的资源使用挂钩的定价。

69. 修剪和可选数据设计值得继续研究。 它们可能无法解决所有问题,但它们比旨在部分传递某种用途不受欢迎的规则,更直接地解决了存储负担。

70. BIP 本身承认,策略通常是打击垃圾信息的正确场所。 其无法保证完美过滤,本身并不能证明必须使用共识。(GitHub

八、它抑制了创新与采纳

71. 它会产生寒蝉效应。 如果当前有效的构造可以通过共识被暂停以压制相关用途,开发者可能会避开比特币。

72. 它赋予了现有用例特权。 "所有已知的货币用例" 保护了现在,而非未来。

73. 它在价值被发现之前就摧毁了期权价值。 升级钩子的最佳未来用途可能尚未有名字。

74. 稳定的基础对长期合约很重要。 钱包、托管系统、支付通道和金融协议需要确信有效的交易结构将保持可用。

75. 它缩小了脚本设计空间。 这可能使某些构造变得更大、更昂贵、更不优雅,或暂时不可行。

76. 它可能延迟高级合约研究。 BIP 明确接受 BitVM 风格的工作可能需要等待,或在测试网和侧链上进行。(GitHub

77. 它通过共识将实验从比特币推开。 测试网和侧链是有用的,但如果没有令人信服的安全理由,构建者不应被从基础层驱逐。

78. 未来的 Layer 2 系统可能依赖于今天未使用的钩子。 基础层的可选性可以支持扩展,而无需频繁的基础层活动。

79. 应用可以强化货币。 更好的钱包、托管、结算、信用、证券和证明系统可以增加比特币的效用、流动性和需求。

80. 比特币不必在货币与技术之间做出选择。 其货币优势可以通过一个支持安全钱包、合约、托管、结算和创新的开放网络得到加强。

九、激活机制过于激进

81. 55% 的阈值是对 BIP 9 的重大偏离。 BIP 9 规定了 95% 的矿工准备就绪阈值;BIP 110 提议 55%。

82. 一项有争议的限制应要求更大的信心,而非更少。 临时期限并不会使协调失败变得无害。

83. 矿工信号并非对所有比特币用户的公投。 算力保障交易安全并为其排序,但持有者、交易所、钱包、商户、托管人和企业决定了他们在经济上接受哪些规则和资产。

84. 强制信号改变了不参与的含义。 在指定窗口期内,强制执行节点将拒绝未设置位 4 信号的区块。

85. 该部署设计为在强制执行链上不晚于预定高度锁定。 这比仅仅观察自愿准备就绪更为强硬。

86. 缺少 FAILED 状态移除了一个干净的退出路径。 一个无法吸引足够自愿支持的提案,应该能够在没有强制协调的情况下到期。(GitHub

87. 激活机制无法制造共识。 它可以协调软件状态,但无法创造社会和经济上的协议。

88. 不同的执行方式可能分裂网络。 如果具有经济重要性的参与者应用了不兼容的有效性规则,结果可能是链分裂或长期不确定性。

89. 临时分裂不会是微不足道的。 流动性、托管、结算、会计和用户信心都可能受到影响。

90. 硬共识是比特币的免疫系统。 为一项有争议的用例限制降低门槛,可能创造比目标数据存储问题更严重的风险。

十、先例比目标更危险

91. 规则会过期,但先例不会。 未来的活动可以引用 BIP 110 作为证据,表明共识可用于压制不受欢迎的有效活动。

92. 同样的逻辑可以重复使用。 一个派系可以将另一种用途标记为非货币、有害、有法律风险或不受支持,并寻求将其排除。

93. "不受支持的用途" 是一个可扩展的类别。 比特币没有中央产品经理可以永久定义其批准范围。

94. 基于目的的边界变成了政治边界。 一旦有效性取决于对合法用途的判断,协议辩论就变成了关于价值观和权力的竞争。

95. 今天的目标不会限制明天的目标。 隐私工具、新型托管、稳定币结算、代币系统、企业应用或其他不受欢迎的用途可能面临类似的论点。这不是预测。这是一种治理风险。

96. 每一项限制都被呈现为例外。 先例恰恰是由其倡导者认为独特的案例创造的。

97. 社会凝聚力是稀缺资产。 将一场文化争议编码到共识中,可能会消耗应对更严重威胁所需的信任和协调能力。

98. 每个利益相关者都应得到倾听。 开发者、节点运营者、矿工、持有者、钱包、交易所、托管人、公司和机构,都承担着不同的风险和責任。

99. 风险资本值得被考虑,但不应赋予其控制权。 大户、矿工、交易所、托管机构和公司并不拥有共识。开发者或节点运营者单独行动也无法拥有。持久的协议需要所有参与方之间的协调。

100. 企业的参与在加强比特币时才是合法的。 企业让人们能够在法律框架下以规模、问责制、资本和连续性进行组织。它们不应拥有特殊权力,但也不应被视为全球货币网络的外来者。

XI. 一条更好的路径是存在的

101. 参与者可以在不改变共识的情况下反对数据存储。 他们可以选择不使用、不推广、不索引、不转发或不开采它。

102. 更严格的软件选择可以保持自愿性。 相互竞争的实施方案和可配置策略是开放网络的特征,而非缺陷。

103. 我们可以在干预之前改进衡量方式。 发布关于带宽、存储、验证时间、UTXO 增长、费用挤兑和节点经济学的可重现数据。

104. 我们可以针对可衡量的资源成本进行约束。 一条针对已证实的拒绝服务或验证风险的狭窄规则,比一个部分基于感知用途的宽泛方案更具正当性。

105. 我们可以改进数据放置方式。 更好的承诺、可选存储、剪枝和二层架构可以在保持功能的同时减轻负担。

106. 我们可以提高费用市场的透明度。 更好的工具和模型可以显示谁在支付、谁在承担成本,以及哪些用途实际上挤出了支付。

107. 我们可以在研究继续进行的同时保留升级钩子。 当未使用的容量保护了未来的软分叉路径时,它不一定是浪费。

108. 我们可以等待压倒性的共识。 等待的成本应当与不必要的分叉成本进行权衡。在缺乏紧急情况的令人信服的证据和广泛共识的情况下,克制是更安全的默认选择。

109. 我们可以不同意,但不必将盟友变成敌人。 BIP 110 的支持者是在试图保护比特币。尊重的回应是解决他们的担忧,同时拒绝一种带来更大风险的补救措施。

110. 提议的疗法比疾病本身更危险。 BIP 110 将利用共识来限制有效活动、约束未来选项、使部署复杂化,并创建一个未来无法抹去的先例。这使得它成为一份比特币的“医源性”提案。

中立性的守护者

比特币的力量不在于每个人对每种用途都达成一致。它的力量在于,分歧被中立规则和硬共识所约束。

费用为区块空间定价。节点选择策略并验证共识。矿工构建区块。持有者分配资本。开发者提出代码。公司构建基础设施和应用程序。只有当验证、安全性、效用和资本达到压倒性一致时,协议变更才应占上风。

这不是对每笔铭文、代币、文件或应用程序的辩护。这是对中立规则的辩护,这些规则使比特币保持开放,同时市场奖励有用的东西,抛弃无用的东西。

比特币应该在基础层保持保守。对我来说,这意味着拒绝 BIP 110。

比特币不需要纯洁性的守护者。

它需要中立性的守护者。

主要来源

本分析主要基于 BIP 110 版本 1.0.0;BIP 3 的流程和状态定义;BIP 9 的激活设计;BIP 141、341 和 342;Bitcoin Core 的数据载体策略文档;Bitcoin Core 的剪枝文档;以及比特币开发者区块奖励参考。(GitHub

一键保存

使用 YouMind AI 深度阅读爆款文章

保存原文、追问细节、总结观点,并在一个 AI 工作空间里把爆款文章沉淀成可复用笔记。

了解 YouMind
写给创作者

把你的 Markdown 变成干净的 𝕏 文章

图片上传、表格、代码块,往 𝕏 上手动重排太痛苦。YouMind 把整篇 Markdown 一键转成干净、可直接发布的 𝕏 文章草稿。

试试 Markdown 转 𝕏

更多可拆解样本

近期爆款文章

探索更多爆款文章