取消 OP_RETURN 限制,4 年里 BTC 最重要的一次升级
这几天,外网针对取消 OP_RETURN 限制的提案沸沸扬扬——这是比特币 Bitcoin Core OG 开发者 Peter Todd 发出的提案。
(值得一提的是,HBO 曾在大肆宣传的纪录片《货币电气:比特币之谜》中指认 Peter Todd 就是中本聪,这导致 Peter Todd 收到大量拨款请求和威胁,目前已躲藏起来生活。)虽然社区里对这 OP_RETURN 改动的质疑声不少,但根据比特币开发者、Blockstream 核心贡献者 Greg Sanders(昵称「instagibbs」)于 5 月 5 日在 GitHub 上 发布的公告:在下一次网络升级中,Bitcoin Core 将不再对 OP_RETURN 做任何字节或数量的限制。
这更符合比特币的精神?
根据比特币开发者 Greg Sanders 发布的公告和各种开发者的赞同意见,我们可以知道首先 Bitcoin Core 在交易传播(relay)阶段自有一套「标准策略」(standardness policy),用来在交易到达矿工前做三层把关:一是防范「拒绝服务」攻击,拒绝那些算力、内存或带宽消耗远超手续费的交易;二是通过策略引导钱包作者构造既省手续费又不制造冗余 UTXO 的交易;三是保留升级安全——把未知的操作码或版本位当成「非标准」,直到软分叉正式激活为止。
OP_RETURN 和它那 80 字节的上限,正是这套理念的产物:给用户一个可被证明「不可花费」的输出,既能存小段承诺或哈希,也能让节点不把它计入 UTXO,从而避免链上「血本无归」的垃圾输出。
可现在这个软性限额反倒成了鸡肋。一方面,私有矿池和一些中心化服务根本不执行这条规则,任何想写大量数据的人,都能通过绕过策略——要么直接付费给矿工,要么用 bare‑multisig、假公钥、甚至可花费脚本把信息藏进去——把要写的内容照样塞上链;另一方面,动不动就再加一堆黑名单过滤,只会演变成「猫捉老鼠」的博弈,既拦不住最基本的数据写入,又增加了误伤用户资金的风险。
赞同方的开发者认为,彻底移除 80 字节上限后,节点和钱包能享受到两大实际好处:一是 UTXO 集更干净,数据都装进一个明明白白的「不可花费」OP_RETURN 输出里,而非纠结在各种花哨的脚本或多个交易里;二是节点对传播哪些交易「说是」更统一,和矿工实际打包的内容保持一致,钱包的手续费估算和紧凑区块中继也更靠谱。
比特币开发者对比了三种方案,目前采用的「取消」方案在社区中声势最大。更重要的是,他们认为此次取消 OP_RETURN 限制,正是对比特币「透明简约」精神的最好诠释:当一个策略已经失去应有的作用,却依旧被保留,只会徒增复杂度和摩擦;将其剔除,则让节点软件更轻、更纯粹,也让每一笔交易的传播、打包都无须绕弯——矿工只需根据手续费高低来决定优先级,费率市场自然调节各种需求的竞争。
而一旦链上真的出现了过度写入、吞噬资源的威胁,比特币生态还有一整套经过考验的「靶向」防护:签名操作限制、前后代交易数上限、dust 规则……这些精准打击特定滥用场景的手段,比那一刀切的「80 字节」要灵活得多,也更能在不伤及正常使用的前提下,保护每一位节点与用户。
一些业内颇有影响力的 KOL,如 Samson Mow,正在鼓励节点运营商不要升级他们的 Bitcoin Core 版本,或者改用 Knots。
截至撰稿时,根据Clark Mood 的数据来看,Bitcoin Knots 节点的使用率超越了最新版本的 Bitcoin Core 节点。
