作者:Jameson Lopp
来源:https://blog.lopp.net/on-ossification/
译者注:原文标题为 “On Ossification”,“ossification” 直译过来是 “骨化/成骨”,也是原文题图的由来。在译文中,我使用 “定型” 来翻译 “ossification”。
在网络协议的语境下,“定型(ossification)” 指的是协议的演进和变更速率放缓。这似乎是一种网络科学定律。本质上,随着一套网络协议获得越来越多的采用、网络的 “群众” 壮大,通过在网络的用户间协调软件升级来改变发展方向所需的力气会显著增加。最终,安全激活任何协议变更的能力会在网络巨大的规模下粉碎,因为不可能再协调大量没有中心的参与者。
因此,定型是比特币的宿命。但从今天来看,我们发现,我们还在辩论应不应该 主动使协议定型。我个人强烈反对这个方向,并且相信,从这个时间点来看,基础协议还有多得多的提升空间。
我请诸位注意,比特币,只有愿意在谨慎的、共识推动的环境中实现合理的、能够带来广泛好处的协议优化,才能在长远的未来保持活力、吸引关注并保证安全性。主动定型、冻结变更,在当前这个时间,是傲慢、短视的,并且站到了最初创造比特币的远见卓识的对立面上。深思熟虑且持续的演进,对比特币的长期价值来说是关键。电子黄金之所以由于实体黄金,就在于它不是惰性的。我的意思是:实体黄金的属性不能再优化,因此黄金上的金融创新是通过中心化的借据(IOU)来发生的 …… 而比特币的属性可以优化,从而加强其免信任的用法。
以史为鉴
比特币仅仅只有 15 年历史,已经经历了许多共识变更和升级。假定当前就是理想的终止时间,还过于急躁。协议需要继续优化,才能保持吸引力。
我们应该从其他热门的网络协议(比如 “简单邮件传输通讯协定(SMTP)”)中吸取教训。如果比特币协议定型了,开发者们将在上面开发日益复杂的技术层,以增加想要的功能。而复杂性就会带来 bug 和爆破。
推荐文章:去中心化邮件的死亡
这并不是在批评 BitcoinOS/BitVM/Botani 的 Spiderchain/Citrea 的 zero knowledge rollup 这样的复杂技术层 —— 他们只是在尽可能地利用可用的工具。即使我们不想让比特币变成一个厨房水槽协议,如果向基础层加入低层功能可以显著减少更高层级的开发中功能的复杂性,那就是有意义的。
可能的道路
许多有用的特性,比如 “限制条款(covenant)”、“保险柜(vault)” 和支付池(payment pool),都需要基础层的升级。在协议自身中以干净的方式开发这些特性,要远远好过在险阻的覆盖层开发。具备更多模块的基础层,会给比特币解锁一个新的设计空间。
“比特币 Layer 2 开发者想要 OP_CAT。CAT 对许多项目都有好处,而且可以加速免信任的创新。
只有从未尝试过开发其它层的人才会主张‘我们不需要改变基础层;任何东西都可以在其它层实现’。”
—— 作者的推特
经过充分的讨论、获得了社区共识的、谨慎的、充分测试的升级,不会破坏财产权或比特币的稳定货币核心立场。升级体现的是用户的意愿,而不是对这种意愿的漠视。
我相信,比特币的潜力比我们已经实现的要大得多。我将比特币区块链看作一个密码学累加器,允许多种多样的系统锚定在上面。但现在还仅仅是小试牛刀。今天,开发免信任的二层是如此困难,如果协议定型,我们会束缚开发者并极大地限制发现区块空间最有价值用法的实验。
人们常常说,我们不需要改变比特币,因为我们只需在别的层扩容。当然,真是这样就好了……开发者们也不需要如此吃力!但我们的基础层还不具备所有的原语、能让开发者轻松推出免信任的二层!我们可以(比如说)让比特币的脚本再次强大起来。
注意,为了创造闪电网络,我们实现了 3 个不同的分叉,来启用 3 种不同的模块。没有这些分叉所带来的功能,闪电网络协议也会笨拙得多、其博弈机制也不会那么可靠。
我们还有其它软分叉可做,比如可以极大增强闪电网络、启用 “通道工厂”、指数级提高闪电网络得效率的 SIGHASH_ANYPREVOUT 。还有别的分叉,可以加强隐私性,比如 “跨输入的签名聚合”。还有一些分叉,比如 OP_CTV,可以利用比如限制条款和保险柜提升自主保管的安全性。我们可以看到许多可能性,但迈向它们正变得越来越困难。
论主权与自主保管
可扩展性是另一个长期问题。Greg Maxwell 在 2015 年这样说:
“如果这个系统变得太贵,人们就会被迫信任第三方,而不是独立地执行系统的规则。如果比特币区块的资源用量(相对于可用的技术)太大,对比传统的系统,比特币就会失去竞争优势,因为其验证变得过于昂贵(赶走许多用户),迫使人们重新回到这些传统的系统。如果容量太低、我们构造交易的方法又过于低效,利用区块链解决争议的代价就会太高,同样迫使人们回到原来的系统。“
赢得了区块体积争议的验证去中心化只是故事的一部分。经济参与者的去中心化对比特币的长期成功同样重要。请记住,并非节点的意愿决定了比特币的未来,而是节点中的经济多数派的意愿决定了比特币的未来。比特币的经济参与者包括矿工、持币者、交易者(包括企业和托管商)。我想说的是:如果经济利益相关的节点数量因为中心化而减少了,而且大部分比特币用户都因为代价高昂而放弃了自主保管,那么可以预期,协议的 “治理” 会变得更加中心化、碎片化。
就当前的比特币而言,也许全世界有 1 亿人可以理解比特币的基本属性。但在一个世界人口有 80 亿的世界里,这种状况不会得到一种新的去中心化货币、改变价值和稀缺性的版图,而只会是一种新的精英,随着时间推移,步历史上的精英团体的后尘,以创造繁荣开始,以面包和马戏结束。比特币让我们第一次有机会超脱历史循环、不是用一群新的精英来代替旧的精英,但只有我们继续通过优化协议、让比特币的基本属性更容易获得来推动去中心化,这种可能才会成为现实。
此外,请注意,“我们可以在别的层上实现任何想做的事情” 这种论调忽视了一个事实:没有哪一层可以提供跟基础层相同的安全模式。无论什么时候,你在比特币之上开发一层,就必然会给该层的自主保管用户创造一组新的博弈机制和权衡。
Ossification Steelman
定型论者认为,比特币已经实现了自身作为健全货币和价值存储的核心功能。未来的变更,即使动机纯良,也会带来不必要的风险,可能会削弱让比特币变得有价值的多种属性。通过让协议定型,我们保证了比特币会长期保持一个值得信赖的、去中心化而且不可篡改的货币系统的样貌。
1. 保护对比特币的基本属性的信任
比特币的首要价值立场是其固定的供给量和不可变更性。对协议的任何变更,即使是软分叉,都有可能侵蚀对这些核心属性的信心。一些人声称,改变协议的能力降低了对通胀方案的信心,无论动机多么好。
2. 减少开发者控制和中心化风险
允许持续改变比特币给了开发者过大的影响力。这会产生中心化风险,因为一小群人可以悄悄改变比特币的属性。
3. 避免出现意料之外的后果
即使初衷良好、充分测试的变更,也可能会对网络产生不可预见的效果。随着比特币的价值和重要性提高,这些意料之外的后果的潜在影响会变得越来越严重。
4. 随着网络壮大,变更的难度会变得更高
随着比特币的采用增加、更多的经济价值建立在上面,任何变更都会变得更有风险、更有争议。定型论者主张,这就是协议应该稳定下来的时候了,就像其它基础协议(比如 TCP/IP 和电源插座标准)一样。
5. 维持比特币作为健全货币的功能
比特币的首要目标是作为一种免于贬值的全新货币系统。定型保证了这一核心功能会受到保护、不会为了可能的好处而牺牲这种基本属性,而那些潜在的好处对其主要目标来说可能并不关键。
定型论者的常见论点
定型论者主张,比特币自身的工作状况非常好,而且,协议的规则应该非常难以变更,以保护其作为不可改变的、无法通胀的、政治中立(apolitical)的货币的核心价值立场。即使出于善意的变更,也可能带来巨大的风险,可能会危及比特币的长期成功和稳定性。
1. 别去修理没有坏掉的东西
比特币已经以当前的协议存活下来,而且仅在 15 年间,市值就从一文不值成长到了 1.4 万亿美元。所以没必要冒牺牲这种成功的风险、发起仓促或者不必要的变更。
2. 稳定性至上
比特币的核心价值是其稳定性和可预期性。协议规则不应该出于一时兴起而不断改变。频繁的修补会削弱人们对比特币的不可更改特性的信心。
3. 三思而后行
改变比特币是一项极为严肃的事情,就类似于改变宪法,或者已经延续了几个世纪的法律。任何改变都应该缓慢、谨慎、保守地进行,而且,只有在考虑了所有的长期后果之后,才能进行。
4. 赌注越大,越不能着急
比特币变得越大、越成功,对协议变更的保守主义就变得更重要。当承担风险的是数万亿美元的价值,我们就承担不起犯错的代价和不必要的风险。
5. 通往地狱的道路由善良的愿望铺成
即使初衷良好的协议变更,也可能产生意料之外的负面影响,比如伤害矿工、开发者及持币者组成的经济模型。下行风险可能超过任何理论上的好处。
6. 保持简单
并非每一种特性或者说优化都需要在基础层发生。许多东西都可以在更高层级(比如 layer 2 或者 layer 3)上发生,不需要危及比特币的核心安全模式和稳定性。
7. 变动不居的世界里的不变货币
持续的 “优化” 和协议变更违反了比特币成为一种稳定、政治中立的货币和结算网络的承诺。定型是一种特性,防止比特币被特殊利益捕获、产生不可预测的变化。
8. 比特币只应该是货币
区块空间的非货币用途,比如 token/NFT,只会助长欺诈,将使用比特币作为货币的用户挤走。
我对定型论的回应
保护对比特币的基本属性的信任
对比特币的属性及其抵抗糟糕想法的抗性的信任,来自于协商协议变更的治理程序,而不来自变更的完全不可能性。比特币是密码安娜其主义,而且是一个冷漠是常态的系统(冷漠自身就是一种强有力的否决)。要么你认同比特币的治理迄今为止运作良好,要么诺认为这一切只是运气、我们随时可能失败。
推荐视频:Decentralized 2018
减少开发者的控制和中心化风险
与上一点类似,要么你认为,围绕协议变更的编译机制是可靠的,要么,你认为这全是运气好。比特币的开发者无法强迫任何运行自己不同意的代码。
同样地,开发的内部流程也充满挑战。绝大部分被提议的规则和代码变更都无法通过考验。
来自我四年以前的研究的摘要:
从 Bitcoin Core 分析了所有被拒绝的代码合并请求之后,我们发现:
- 总计有 901 1209 行代码被拒绝添加
- 总计有 627 9435 行代码被拒绝删除
总共有 1529 0644 行代码被拒绝,而只有 365 1046 行代码被接受!
也就意味着,截至本文撰写之时,只有 19% 的被提议的代码变更被 Bitcoin Core 代码库接受了。
防止意料之外的后果
对 “不可知的未知” 以及 “意料之外的后果” 的恐惧,在我看来,不算一个论点。为什么呢?因为任何一种决定都有不可知的未知。改变协议会有不可知的未知。不改变协议也有自己的不可知的未知。总有不计其数的不可知的未知,因此这种论点会取消自身。关键是警惕 —— 这决定了比特币的反脆弱性。
随着增长,改变的难度日益增加
我认为,双方在这一点上没有分歧。随着网络壮大、变得更有价值,它已经变得更难改变,而且还会继续。
维护比特币作为健全货币的功能
比特币所在的升级不会定型。这个世界会继续给比特币抛出新问题;如果比特币无法适应世界、无法解决这些问题,出现诡异而且很有可能是中心化的方案就会是意料之中的事。这就是导致 SMTP 衰落的原因。我的观点是,定型无法保证能够保护比特币的属性。
别去修理没有坏掉的东西
没有人会推动仓促的变更,也没有人真的认为比特币如果没有某一种特性就会 “崩溃”。但我们可以说的是,比特币的使用方式会发生变化,这是自然而然的事。在过去 15 年中,它已经发生了巨大的变化。
稳定性至上
自中本聪离开这个项目以来,比特币的规则变化就没有 “一时兴起” 的。中本聪曾经不征求其他人的意见、作出独断的变更。我注意到,一些有影响力的人将比特币开发者蔑称为 “修补匠”,这跟事实相去甚远。我们可以观察到,比特币的变更速度在这几年中已经大幅放缓,因为开发者们压倒性的谨慎。
三思而行
实际上,缓慢而谨慎、经过严格审查的优化,正是创新者们所要求的。
赌注越大,越不能着急
毫无疑问,我们应该努力避免犯错。我们也应该有信心,错误不是不可挽回的。举个例子,大量的漏洞曾经进入 Bitcoin Core,但也在没有造成破坏的时候修复了。而且,甚至在比特币网络遭受共识故障的时候,也在几小时内恢复了(因为网络的参与者保持警惕)。反脆弱性是比特币的根本属性。
比特币不是活在真空中的。某种意义上,它是一种活的东西。而生命不可能一边停滞一边生长。
推荐文章:《货币蘑菇林中的比特币》
通往地狱的道路由善良的愿望铺成
这是另一个会取消掉自身的论点。比特币的生态系统是非常复杂的,由不计其数的活动部件和参与者组成。除了协议自身以外,系统的其余部分会持续改变,我们应该准备好处理这些变化所带来的无法预见的后果。
保持简单
这是另一个争议双方都基本上同意的观点。我们应该同意,对基础层而言,最重要的变更是那些具有外溢效应、让其它免许可层的创新可以随心所欲地实验、无需担心基础层的变更。
变动不居的世界里的不变货币
这似乎是不信任比特币的治理背后的博弈机制所引发的另一个问题。我的观点是,如果你不信任这个系统内生的检查和平衡,那么你也并不真的相信比特币。
1)公开的免信任共识系统让你可以使用它们而无需信任任何一个人。不过,你必须在整体上信任每一个人。
—— Jameson Lopp,2016 年 6 月 26 日
我后面会指出,定型自身也可能让比特币被特殊利益集团捕获。麻木不能带来答案,警惕和适应新的压力环境的能力才是答案!
比特币只应该是货币
从我记事开始,围绕比特币的哪些使用方法应被视为诈骗的争论的从未停止。我不觉得这些争论很有趣,因为争论者最终总会诉诸主观价值,而我们可以观察到,区块空间的非金融用法对一些人有客观的价值 —— 他们愿意为此付费。
从技术上讲,比特币是一个数据;区块链基本上是一种只能添加的日志,另外有一些别的有趣属性。因此,人们在非金融用途中使用比特币已超过 10 年时间。就像我在 8 年前写的,正是这种数据的永久存在、不可覆盖的可靠性,吸引了人们将它用在非金融用途中。
推荐文章:《比特币:区块链之海中的信任锚点》
我们不知道区块空间的长期市场是什么样的 —— 哪一种用法能够提供最高的效用和价值。这个问题会随着挖矿奖励的减半而变得更加重要。我认为,更多的功能、更多运行实验的层级,就意味着更有可能找出最有价值的用途。也许,举个例子,可能是用来赋能 zero knowledge rollup。我们不知道,所以我认为,我们应该让创新者继续发掘潜在的设计空间。
那么,在我看来,争论的根源在那里?
定型论者 vs. 创新者 pic.twitter.com/tAbvORcy7V
—— Jameson Lopp,2024 年 10 月 29 日
常见问题
问:那些无关 bug 修复的协议变更会不会都是 “很好,但不必要” 的?会不会它们只是象牙塔里的技术极客们兴趣使然,但对比特币有朝一日成为全球货币并不严格必要?
答:我并不认为,“必要” 跟 “良好” 是对立的。我认为这是一个找寻路径的问题,要探索比特币的设计空间并最大化这个系统的价值。讲清楚一些,我们可以现在就让比特币定型,然后它可能会继续良好运行一段时间,直到我们遇到一个致命问题,比如量子计算或者时间戳溢出点(timestamp overflow point)。但比特币自身的性质将由于开发上的限制而以另一种方式发展。
问:你认为什么时候是变更的 “终点”?什么时候比特币就足够好了?
答:我们应该持续优化比特币,直至无法再优化。我们已经看到,自 2017 年以来,新的比特币的优化提议的数量急剧减少,现在每个月只有不到 1 个。而且,许多提议甚至没有提供激活指导,因为开发者不想面对这个考验。结果是,我们正在失去协议开发的人才,这进一步加剧了衰减。
问:协议变更能否限制在 “修复 bug 和维护” 上,不要 “增加新特性”?
答:这当然是个选择,可能也是最终我们要走的道路。但我不认为现在已经到这个地步了。
问:请为我们描述一下,比特币生态系统可以接受软分叉或者硬分叉变更的情形。
出现了任何可能危及系统的持续运行的致命问题。不过,定型的本性可能会让未来运行紧急修复变得非常困难。
- 设想比特币的共识规则已经有 10 年没有发生任何变更。因此,也许那时候从业的比特币协议开发者从未真正经历过共识变更。这种情形对我们来说不是好事。
- 设想有一些迫在眉睫的问题,但我们不能准确知道什么时候它会变得致命。定型的本性意味着我们会不断推迟解决问题 …… 甚至为时太晚。我建议你看看我最近一次关于量子计算的演讲,为这种情形提供了一个准确的例子。
结语
我们应该努力制作能够加强比特币、允许更多免信任系统在上面建立的变更。我认为,我们都同意,比特币不应该变成一个厨房水槽协议(就像基于 EVM 的网络一样),但就目前来看,想要创新的开发者发现,如果不创造复杂的枚举逻辑,创新就非常困难。
定型就是自满。当然,我们都同意比特币很棒。但我 不同意 比特币已实现其全部潜能。我认为,自满是比特币最大的威胁之一 —— 我们不能满足于已有的成就。
技术的本性是通缩的(Technology is deflationary by nature)。比特币的共识规则应该优先考虑安全性,并尽可能在更多方面保持系统的去中心化。不仅包括节点运营者,还包括区块空间的用法。因为,毕竟,如果一个人因为区块空间价格过高而不愿意使用,那就肯定不会运行一个全节点。我也认为,我们应该加强开发者们开发免信任二层的能力,使得我们可以继续探索区块空间作为一种密码学累加器的潜在用法,从而有更多机会找到对区块空间的可持续需求、永续为比特币的热力学安全性付费。
我们要让比特币的未来受乐观主义的驱动,还是悲观主义的驱动?
定型论是由悲观主义和对失败的恐惧驱动的。
在我看来,一个人的立场可以归结为,要么他相信比特币是反脆弱的,要么他相信比特币是脆弱的。
—— Jameson Lopp,2024 年 10 月 30 日
说清楚一些,谨慎是极为重要的。你绝不会看到我声称 “比特币如果不实现 X 特性就会失败”。在我看来,实际上,比特币成功的因素之一就是让它难以改变。
真正的头痛时刻,来自于你意识到比特币的汇率会继续飙升,即使它的独特属性正在被缓慢侵蚀。
财富不应该带来自满。
—— Jameson Lopp,2024 年 10 月 29 日
但如果我们被恐惧麻痹,我们就会牺牲可能的道路,并大大阻碍对比特币设计空间的探索,我相信,这自然会限制其采用、应用场景以及有用属性的强化。
预防的痛苦常常超过真正要被避免的危险。
—— 拿破仑
发出这样的警告,因为我看到冲突即将到来。想想看为什么我们希望提升比特币协议。关心它的唯一理由就是你是这项协议的一名真实用户。换句话说,协议优化只对自主保管的用户有意义。如果你使用一个第三方为你保管资金,你就不会管他们怎么使用这个协议。
关注 Bitcoin TradFi 采用的那些人不会关心怎么优化协议和扩展网络,因为他们根本不关心自主保管。
关系到比特币未来的下一场大战正在酝酿。
—— Jameson Lopp,2024 年 9 月 21 日
也许比特币已经定型,以上文字都是徒劳。在追悔莫及之前,这是无法确切知道的。世界从未停止演化,我们也必须自问,我们是希望比特币跟它一起演化,还是放任比特币落后。
让我们奋勇向前!