即将发布的比特币核心版本 Bitcoin Core 30.0 中的一项新默认设置,在比特币社区中引发了部分争议。一些用户表示,他们不会升级到比特币最常用客户端的新版本,或者转而使用 Bitcoin Knots:这是 Bitcoin Core 的一个软件分支,由 OCEAN 首席技术官 Luke Dashjr 维护,而 Dashjr 本人对这一更改持批评态度。
这场争论相当技术性,涉及一个看似无关紧要的问题。比特币核心 30.0 将开始使用更大的 OP_RETURN 输出在网络上中继交易:以特定方式嵌入任意数据(例如文本或图像)的交易。这似乎是一个微小的变化,因为比特币核心(和比特币结)节点一旦将这些交易包含在区块中,就会接受它们,同时它们也会中继以其他方式存储任意数据的交易。
但此次更新引起了争议,因为它反映了更深层次的担忧。
“比特币结点视角”
比特币结的支持者通常不喜欢交易中包含任意数据,或者他们通常称之为“垃圾邮件”。但到目前为止,大多数人还是勉强接受了这一点,认为这是比特币协议的一个不良副作用。
然而,他们确实认为应该阻止这种使用方式。比特币核心开发者过去曾通过限制节点中继的 OP_RETURN 输出的大小来实现这一点,这确实似乎促使一些人决定将这类用例转移到其他加密货币上,而不是比特币。(最值得注意的是,这通常被解释为以太坊的“起源故事”。)
在他们看来,比特币核心 30.0 中更新的中继策略象征着这种抵制的终结。它向“垃圾邮件发送者”发出信号,表明比特币欢迎他们。
一个担忧是,这将越来越多地吸引这类用户和项目。而且由于比特币区块空间有限,将其用于数据存储会很快填满区块,进而推高交易费用,甚至可能达到许多常规(“货币”)交易因此无法承受的程度。
另一个担忧是,尽管任意数据已经可以通过不同的方式嵌入,但与其他方法相比,OP_RETURN 使得解析这些数据变得更容易一些;将其转换为(比如)图像所需的工作量要小一些。比特币结的支持者担心,这也增加了包含 CSAM(儿童性虐待内容)等非法内容的风险,这可能会给节点运营商带来监管压力。
如果问题在于比特币核心开发者没有抵制垃圾邮件发送者,那么比特币结 (Bitcoin Knots) 就代表了这种抵制。即使他们无法阻止任意数据被纳入比特币区块链,或者无法完全阻止,他们至少不会为垃圾邮件开辟新的途径。实际上,他们等于是在发出“垃圾邮件不受欢迎”的信号,希望以此来达到震慑垃圾邮件的效果。
Bitcoin Knots 的支持者表示,假设这种抑制效果能够成功阻止垃圾邮件发送者,那么比特币就可以继续用于其最初的用途:货币交易。
“比特币核心视角”
人们可以通过各种方式在比特币区块链上存储任意数据。事实上,近年来许多人将图像存储在铭文中,甚至可以将其嵌入公钥或私钥中。
大多数比特币核心开发者确实同意比特币结(Bitcoin Knots)支持者的观点,认为这些都不是好事,也不符合比特币的初衷。但在所有这些选项中,使用 OP_RETURN 是危害最小的方法,因为它最大限度地减少了计算机资源的消耗,从而尽可能地保持节点的可负担性和可访问性。
因此,比特币核心开发人员认为,与其试图抵制使用 OP_RETURN,不如允许它;限制可能只会让事情变得更糟,甚至可能更糟。
首先,仅仅拒绝中继这些交易在技术上并不能取得多大成效。这些交易仍然可以被其他节点(例如 Libre Relay 节点)中继,或者直接提交给矿工,从而被打包到区块中。这反过来可能会产生中心化效应,因为直接提交可能会不成比例地分配给大型矿工,而大型矿工则会以牺牲小型矿工的利益为代价,从额外的手续费收入中获益。(如果此类交易最终被打包到区块中,节点本身也会受到一些细微的损害。)
更稳健的解决方案——也可以说是合乎逻辑的下一步——是通过共识协议升级(软分叉)使(大型)OP_RETURN交易无效,这样它们就根本无法被挖矿。但正如前文所述,这样做的问题在于,人们可能会使用其他更有害的方法将数据存储在区块链上。(事实上,许多人已经倾向于使用铭文,因为对于图像等大块数据来说,这种方法的成本要低得多。)
理论上,其中一些方法也可以被阻止。但大多数比特币核心开发人员预见到,这只会导致一场“打地鼠”的游戏,而“垃圾邮件发送者”每次都会采取不同的方法。这会激励他们像常规交易一样“伪装”他们的数据,这可能会导致货币交易和任意数据变得越来越难以区分。
现阶段唯一的解决方案或许是指定某个人或团体来判断哪些交易可接受、哪些交易不可接受,这实际上就是引入某种拥有审查权的实体。比特币核心开发者(他们本身就是一个相当模糊的贡献者群体)对承担这样的角色毫无兴趣——尤其是因为他们不希望成为监管机构的目标,以免监管机构迫使他们滥用这种权力——他们更希望比特币根本不会走上这条路。
相反,他们通常期望问题会随着时间的推移而自行解决,而无需他们的干预。
这是因为一笔货币交易相对而言只是一小块数据。一个比特币区块就能容纳数千笔交易。其他类型的数据往往要大得多;仅一张图片就能填满整个区块。这意味着一个“垃圾邮件发送者”通常必须出价高于许多普通用户。如果货币交易需求足够大,使用比特币存储数据的成本很快就会变得昂贵。在这种情况下,任意数据应该被定价并自然消失。
大多数比特币核心开发人员都同意比特币应该是一个主要用于货币交易的网络——但这并不是因为他们会积极抵制其他用例,而是因为系统的激励机制已经如此一致。
那么现在怎么办?
每个人都可以自由使用他们想要的任何软件,无论是 Bitcoin Core 30.0(无论是否更改此默认设置)、旧版本的 Bitcoin Core、Bitcoin Knots、Libre Relay 还是其他任何软件。从这个意义上讲,比特币用户实际上拥有主权。
从 X 等社交媒体平台上的情绪来看,确实有相当一部分用户不会升级到 Bitcoin Core 30.0,甚至不会转用 Bitcoin Knots。但我们无法判断这部分用户究竟占比特币用户群的多少。他们可能是绝大多数……也可能是少数(但声音很大)。
无论如何,比特币的运作方式并不像民主国家。由于每个节点通常都会将交易转发给多个其他节点,因此,即使只有相对较少的用户选择运行 Bitcoin Core 30.0(或 Libre Relay 或类似版本),较大的 OP_RETURN 也应该能够相当自由地传播。这种情况可能无法完全阻止,但假设 Bitcoin Knots 的支持者想要至少有效地抑制这种情况,他们需要说服绝大多数节点运营商(可能达到 95% 甚至更多)加入他们的过滤工作。
如果他们做不到这一点,运行比特币结 (Bitcoin Knots) 可能会被视为一种异议的声音——但实际效果却不大。
Aaron van Wirdum 曾任《比特币杂志》主编,著有《创世纪:比特币的启迪者与项目的故事》。欢迎在 Nostr 上关注他。
这篇文章《比特币核心还是比特币结:OP_RETURN 争论的真正意义》最初发表在《比特币杂志》上,作者是 Aaron van Wirdum。