BIP-110深度解析:比特币的“数据围堵”临时软分叉提案

碳链价值8 小时前

2026年2月,备受争议的比特币提案BIP-110被正式合并进官方BIP提案库[1]。这个由开发者Dathon Ohm提案、开发者Dash Luke Jr.大力支持、客户端Bitcoin Knots落地推动的,旨在阻止比特币区块链空间被非BTC交易(即所谓生态应用,比如铭文、BRC-20等用例)所占用的比特币改进提案,在诞生前后就备受社区关注和争论。本文拟对其进行拆解,看一看是否能够得出一些有启发的结论。

一、提案的核心内容:一场针对数据存储的“临时软分叉”

BIP-110的标题是“Reduced Data Temporary Softfork”(减少数据的临时软分叉),其核心目标非常明确:在共识层面暂时限制数据字段的大小,以纠正因标准化支持任意数据而导致的激励扭曲,并将优先事项重新聚焦于改善比特币作为货币的功能。

具体而言,该提案规定在为期一年的临时部署期间,区块需遵守以下额外规则:

(1)脚本公钥(scriptPubKey)长度限制:新建的输出脚本公钥超过34字节即为无效,除非首个操作码是OP_RETURN(此时最多允许83字节)。这意味着除了OP_RETURN这种明确可丢弃的输出外,所有UTXO的核心标识必须精简。

(2)数据推送和见证元素大小限制:OP_PUSHDATA* 系列操作码推送的数据以及见证栈元素超过256字节即为无效(BIP16的redeemScript除外)。这直接针对了铭文等将大块数据嵌入交易的做法。

(3)未定义的见证版本禁用:花费未定义的见证版本(即非Witness v0/BIP 141、Taproot/BIP 341或P2A)的行为被视为无效。虽然创建这类输出仍然允许,但未来一年内无法花费它们。

(4)Taproot附件(annex)禁用:包含Taproot annex的见证栈被视为无效。annex作为未来升级预留的未定义数据字段,目前被完全封禁。

(5)Taproot控制块大小限制:超过257字节的Taproot控制块(对应最多128个脚本叶子的默克尔树)无效。这限制了单个UTXO可承载的脚本复杂度。

(6)OP_SUCCESS* 操作码禁用:Tapscript中包含OP_SUCCESS*系列操作码(无论是否被执行)均无效。这些操作码同样是为未来升级预留的。

(7)条件操作码禁用:Tapscript中执行OP_IF或OP_NOTIF指令(无论结果如何)均无效。这直接打击了利用条件语句隐藏数据的行为。

值得注意的是,在激活高度之前创建的UTXO在花费时不受新规则约束。软分叉一年期满后,所有UTXO将恢复不受限制的状态。

二、提案的动机:对抗“数据滥用”与捍卫“货币本质”

BIP-110的动机部分措辞强硬,反映了提案者对所谓“数据嵌入”行为的根本性排斥。其核心逻辑可以概括为以下几点:

(1)历史传统的延续

提案指出,比特币社区历史上一直以“对抗性”态度对待将任意数据嵌入比特币交易的技术。这种对抗被视为保护比特币作为“互联网原生货币”的必要手段。从2010年的OP_RETURN早期讨论,到2013-2014年关于区块链大小的辩论,再到2022年以来的铭文争议,这条脉络始终存在。

(2)激励扭曲与负外部性

这是提案最具说服力的技术论证。提案认为,费用市场无法正确解决数据存储的激励问题:

- 支付交易:付费者向矿工支付一次性费用,获得一次性结算服务。矿工完成服务后,节点运营者自愿维护历史账本,因为这是比特币作为货币运作的基础。

- 数据存储交易:付费者仅向包含该数据的矿工支付一次性费用,但存储数据的负担却永久地落在所有节点运营者身上。节点运营者从未获得任何费用分成,却被强制永远下载、存储和提供这些数据。

这种不对称激励导致矿工获得收益,而节点承担成本,客观上鼓励了数据嵌入行为,损害了网络去中心化。

(3)对“铭文”等新趋势的回应

提案明确提及2022年开始被“利用”的“inscription”技术(即Ordinals/铭文),认为它创造了“显著不必要的节点运营者负担”,并转移了开发焦点——从比特币作为“健全、无需许可、无国界货币”的根本目的转向支持非货币用例。

(4)保护支付用例与抗审查性

提案论证,数据存储与支付不公平地竞争区块空间,推高了比特币支付成本,迫使人们依赖第三方支付处理器,从而使比特币支付更容易被审查。通过限制数据存储,可以降低支付成本,增强抗审查性。

(5)维持节点运营的低成本

保持运行节点的低门槛(无论是财务成本还是其他成本)一直是比特币去中心化的核心承诺。限制UTXO集膨胀和区块数据无限增长,直接服务于这一目标。

三、提案的技术细节:精心设计的“围堵”策略

BIP-110的技术设计体现了“最小干预、最大效果”的思路,试图在尽可能不影响已知货币用例的前提下,封堵主要的数据嵌入途径。

(1)为什么限制脚本公钥为34字节?

UTXO集中的脚本公钥必须存储在快速介质(通常是RAM)中,成本远高于慢速存储。现代比特币实践已将所有花费条件移至见证(witness)中,脚本公钥只需用哈希值承诺这些条件,因此34字节已足够。大脚本公钥不仅浪费空间,还可能被用于创建“毒区块”(恶意构造的验证时间极长的区块)。限制它们几乎不影响现有实践。

(2)为什么保留OP_RETURN?

OP_RETURN输出被证明是不可花费的,节点无需将其存储在UTXO集中。历史上容忍最多83字节,只是为了避免垃圾数据充斥其他类型的输出脚本。尽管pay-to-contract和Taproot技术已可替代OP_RETURN的功能,但为避免破坏遗留协议,提案保留了这一选项。

(3)为什么限制数据大小为256/257字节?

256字节对于合法的密码学用途(如大数运算)已足够。更重要的是,现代压缩技术下,300-400字节即可表示一张图片。提案者认为,图像是最有害的数据存储用例,需求量大,会导致高费用、UTXO集膨胀以及可能引发争议的内容。限制为256字节可阻止连续大块数据的嵌入。

(4)为什么禁用OP_IF/OP_NOTIF?

在Taproot设计中,条件本应在链下评估,链上只揭示最终执行路径。理想情况下,应使用密钥路径花费,避免发布任何脚本。OP_IF在Tapscript中不仅冗余,而且常被滥用于注入“在执行时被跳过”的垃圾数据。虽然无法完全防止隐写术,但封禁OP_IF几乎免费地消除了一个常见滥用途径。

(5)为什么是临时软分叉?

这是提案最具争议也最精巧的设计之一。临时性(一年)有几个目的:

- 降低审查风险:让社区确信这只是一次针对特定危机的干预,而非永久性改变发展方向,从而降低接受阻力。

- 避免阻碍未来升级:某些限制(如Taproot树深度)可能过于严苛,但开发更完善的解决方案需要时间。临时部署为开发者争取了一年时间,以设计更精细的长期规则。

- 给予市场适应期:任何潜在受影响的项目(如Miniscript、BitVM)可以利用这一年进行调整或迁移。

四、权衡与风险:提案的“阿喀琉斯之踵”

BIP-110的作者在“权衡”部分出人意料地坦诚,承认提案存在以下潜在问题:

(1)Taproot控制块限制与智能合约

将Taproot控制块限制在257字节(最多128个脚本叶子),可能影响BitVM等依赖大量可执行脚本的先进智能合约。提案承认这是“不幸的权衡”,但认为这些用例仍处于早期开发阶段,未来一年可以在测试网或侧链上继续实验。

(2)OP_IF/OP_NOTIF限制与现有钱包

某些钱包软件(如Miniscript)习惯性地创建包含OP_IF的Tapleaf。提案通过“激活前创建的UTXO豁免”和“两周宽限期”来降低资金冻结风险,但无法完全排除理论上的可能性。

(3)资金冻结的“完美风暴”

提案详细描述了资金可能被冻结或丢失的极端条件:必须同时满足所有条件——P2TR UTXO、预签名交易、在一年部署期内确认并花费、选择的Tapleaf包含OP_IF或深度>7、密钥路径不可用且无其他合适Tapleaf(冻结),或其他Tapleaf以意外方式花费(丢失)。

(4)开发者空间的“破坏”

提案直言不讳地承认:“是的,本提案有意破坏用户空间,特指数据存储用户空间。”这种坦诚可能加剧反对者的担忧——今天可以为了“反垃圾”破坏用户空间,明天是否会以其他名义破坏更多用例?

五、部署机制:激进的政治声明

BIP-110的部署参数本身就是一项激进的政治声明:

wtfvBItDbjfKiRJNRwv3iQceSCZHYj0cQqBVNgeZ.png

- 55%的算力阈值(而非通常的95%):如果在2016个区块周期内获得超过55%的矿工算力的支持信号,则BIP-110在2周后自动启动。作者辩称,永久性共识变更才需要95%的算力准备,而本次临时软分叉具有紧迫性,因此更低阈值更为理想。这与传统上需要“广泛共识”(如Segwit和Taproot的95%阈值)形成鲜明对比。反对者认为这违背了“粗略共识”(rough consensus)追求广泛接纳的精神。

教链注:“粗略共识”这一概念最早由IETF提出,其著名原则是:“我们拒绝国王、总统和投票。我们相信大致共识和运行代码”(We reject kings, presidents and voting. We believe in rough consensus and running code)。传统上对“粗略共识”的理解包含以下关键特征:1. 非投票制——不依赖多数票决,避免“多数人暴政”;2. 技术论证驱动——观点靠技术合理性和安全性论证取胜,而非人数或影响力;3. 异议可共存——允许反对意见存在,只要不影响整体行动能力;4. 代码即投票——最终共识通过节点实际运行的代码体现;5. 长期演进——共识形成需要时间,不追求短期决断。

- 强制信号期:在区块高度965664(约2026年9月)锁定前的一个难度调整期内强制矿工信号支持;如果逾期得不到矿工明确的支持信号,则通过UASF(用户激活软分叉)无条件启动BIP-110,把携带违规数据的区块视为无效。这进一步压缩了反对者的空间。

教链注:BIP-110采用修改版本的BIP9信号机制,具体参数如下:

name: reduced_data

bit: 4

starttime: 1764547200 (~December 1, 2025)

timeout: NO_TIMEOUT

min_activation_height: 0

max_activation_height: 965664 (~September 1, 2026)

active_duration: 52416 blocks (~1 year after activation)

threshold: 1109/2016 (55%)

- 一年有效期:激活后规则仅生效约一年(52416个区块),之后自动失效。

这种部署机制传达的信息很明确:提案者认为情况已紧急到必须绕过传统的高门槛共识流程。正如Renaud Cuny说的,“在铭文消耗了37%区块空间却长达三年无人采取行动之后,这个机制不再请求许可。”[2] 反对者则可能认为,这开创了一个危险的先例——未来任何团体只要有55%算力支持,就能强制实施临时共识变更。

NYS6szbLKenZWynqEDPcMM1vBELTTFJaA29wzV4e.png

六、社区争议:货币纯洁主义 vs. 协议最小化主义

BIP-110触及了比特币社区最深层的意识形态分歧:

支持方主要观点:

1. 货币纯洁主义:比特币的唯一目的是成为健全货币。任何非支付用例都是对区块空间的浪费,应被抵制。

2. 节点去中心化优先:控制UTXO集大小和区块数据膨胀是维护节点去中心化的必要措施。

3. 激励扭曲需要纠正:矿工获得收益而节点承担成本的激励错配必须通过共识层干预来修复。

4. 先例与信号:通过这一提案向市场发出明确信号——数据存储不受欢迎,开发资源应聚焦于货币功能。

反对方主要观点:

1. 协议最小化主义:共识层应尽可能简单,只强制执行防止双花所需的最少规则。内容过滤应留在策略层(policy)或应用层。

2. “对抗性”的界限:比特币本应“对抗审查”,而非“对抗特定用例”。以共识规则主动排斥某些应用违背了“无需许可”的原则。

3. 滑坡效应:今天可以为“反垃圾”限制数据,明天是否可以为“反金融犯罪”限制交易金额?后天是否为“反不道德内容”限制脚本?

4. 技术可行性存疑:256字节限制能否真正阻止数据存储?分片存储、隐写术等规避手段依然存在。禁止OP_IF是否会影响合法的复杂脚本构造?

5. 程序合法性争议:55%阈值和强制信号期是否构成对现有治理流程的“政变”?未来是否会被滥用?

有趣的是,此次争议中的反对者多是影响力巨大的头部意见领袖、声量更大,而支持者则缺乏特别对等量级的人物。

比如,明确表态反对BIP-110的OG(老炮)有:

- Blockstream CEO、hashcash发明人Adam Back:人们在2025年第四季度花了太多时间去教育别人了解过滤器的架构限制。现在,简而言之就是“这很愚蠢”。不能一直耗费无尽的时间和注意力在这些无底洞里。

- Ordinal铭文协议发明人Casey Rodarmor:这是一个技术上不健全且具有没收性质的提案,它移除了重要功能,甚至无法实现其宣称的目标。

- F2Pool鱼池联合创始人Wang Chun:BIP-110不只是关于限制OP_RETURN的大小;它试图以保护儿童的名义打包一堆胡言乱语,然后作为一个整体强加给我们,就像政府搞社交媒体审查那样。

- Casa联合创始人Jameson Lopp更是写了一篇长文批判BIP-110:BIP-110是一场以“反垃圾”为名、实则高风险且适得其反的治理冒险。它采用55%的低矿工阈值和强制信号期,极大增加了链分裂风险;其没收性规则变更可能冻结依赖Taproot功能的现有资金;它损害比特币抗审查的中立声誉,却无法真正阻止数据嵌入(Peter Todd已证明可在合规交易中嵌入完整提案文本);它限制了BitVM等未来创新,且“临时”说辞虚伪(支持者真正意图是永久性极端限制)。经济层面上,矿工无激励支持(零信号率、会减少手续费收入),节点信号缺乏经济权重(可被女巫攻击操纵),预测市场显示失败概率高达98%。最终,这只是一小撮道德净化狂发动的文化战争,试图用强制手段解决本应由市场和策略层处理的问题。

可见,反对派是比特币整个生态中妥妥的精英阶层。Blockstream是目前Bitcoin Core背后的重要支持者,为强推Core V30去除对OP_RETURN默认数据嵌入尺寸限制的Bitcoin Core开发团队摇旗呐喊是完全顺理成章的。Ordinal是所谓“比特币(应用)生态”的先锋代表。F2Pool是知名矿池,是矿工方面的利益代言人。最后Jameson Lopp则是独立开发者和比特币应用的代表性人物。

相较于反对者阵营的群星闪耀,明确公开支持BIP-110的声音在搜索结果中相对稀缺。这可能有几个原因:

- 支持者多为匿名或技术背景人士:提案作者Dathon Ohm本身就是匿名开发者,主要推动者Luke Dashjr虽在Bitcoin Knots客户端有深厚积累,但并非社交媒体上的高调人物。

- 支持者可能更倾向于“用代码投票”:搜索结果提到,Bitcoin Knots节点中支持BIP-110的比例正在上升——截至2026年2月23日,约7.99%的比特币节点(1995/24981)已表示准备好支持BIP-110。与一个月前的2.98%相比,支持率在一个月内上升了约5%。

- 社区普通用户的沉默支持:许多对铭文生态持保留态度的长期比特币持有者,可能在情感上认同BIP-110的“货币纯洁主义”目标,只是不愿公开卷入论战。

七、历史的先声:中本聪当年的类似情境

教链找到三个比特币早年中本聪参与讨论的与链上数据过滤和限制相关的案例:

(1)在消失之前,中本聪删除了15个操作码,将它们完全禁用,并为脚本引擎堆栈上可操作的数据大小添加了硬性限制(520字节)。他这么做是因为坦率地说,他搞砸了——留下了大量漏洞,复杂的脚本可能被用来对整个网络发动拒绝服务攻击,创建巨大且验证成本高昂的交易,导致节点崩溃。

(2)2010年12月8号,中本聪发布Bitcoin Core 0.3.18版本,其中包含了一个叫做IsStandard()的对交易是否符合标准的检查(Gavin Andresen提交的),遭到社区许多质疑和反对。比如:

网友theymos跟帖说:这毫无意义。矿工们凭什么要采纳这个变更?这意味着他们会因为失去非标准交易而获得更少的手续费。

他同时指出矿工已经明确反对:ArtForz(拥有网络15%以上算力)、tcatm(2Ghash/s)和doublec(矿池维护者)已经声明他们不会使用IsStandard。因此,非标准交易仍将是可能的。

他还给出了威胁式的行动预告:等我有时间,我会为比特币制作一个补丁,移除所有非网络强制执行的交易限制,这样其他矿工也可以轻松配置为包含这些交易。

jgarzik则激烈表示:「请启动你自己的区块链,而不是像这样分叉网络。我希望你们清楚,你们强行纳入非货币数据的行为正在造成多大的破坏。

我从未说过这会导致区块链分叉。这更为根本:是规则分叉。

分叉网络意味着大多数矿工不再运行主流比特币交易规则。theymos 似乎是在划清界限,他想说服大多数矿工不再关注主流比特币交易验证规则。他有权这么做。矿工也有权验证他们想验证的内容。

但这种分叉会让未来在网络上的工作变得更加困难,并且实际上,为其他讨论话题中提到的各种非货币相关数据塞满区块链打开了大门。」

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代币币情的观点或立场