把「一个比特币」改小八倍:BIP-177 重定义基本单位的算盘 图 1
把「一个比特币」改小八倍:BIP-177 重定义基本单位的算盘 · 图 1

比特币的账本里从来没有小数。协议记的是整数个基本单位,那个后来被叫作聪的东西;「一个比特币等于一亿个基本单位」是人类约定的读数方式,小数点是我们替协议脑补出来的。2025 年 4 月 23 日领号的 BIP-177(作者 John Carvalho,类型 Informational,状态 Draft)要把这个约定翻面:让一个基本单位就叫「一个比特币」。听起来是改标签,翻开规范文本会发现它小心翼翼地给改动划了三道围栏,围栏内外是两个世界。

规范三条:什么变、什么不变

第一条,内部单位不变——协议层、账本、共识规则全部不动,该是一亿还是十亿个基本单位,区块验证逻辑毫无感知。第二条,货币代码 BTC 不受影响,仍然指一亿个基本单位;也就是说交易所行情、法币配对、ISO 式简写全部维持原义。第三条,采用该标准的实现必须把过去显示的比特币金额乘以一亿得到新的整数表示——原来显示 0.0001 的那笔钱,今后写作「10,000 bitcoins」。规范还建议应用提供新旧格式切换开关,符号是否使用留作可选项。三份零件合起来:这是一次只发生在显示器上的改朝换代。

把「一个比特币」改小八倍:BIP-177 重定义基本单位的算盘 图 2
把「一个比特币」改小八倍:BIP-177 重定义基本单位的算盘 · 图 2

动机:小数点制造的错觉

动机章节的核心诊断是认知成本:八位模拟小数让人误以为比特币天生十进制,而它的本质是离散单位的计数。整数化显示能让新玩家在第一课就得到正确的心理模型,也简化心算。理由段把这归结为四条:易用性、协议对齐、教育清晰、面向未来。最有趣的一条是供应感知——按新读法,总供应约 2.1 千万亿个「比特币」,天文数字会不会吓到人?作者的回答是拿法币做类比:日元、印尼盾的日常计数动辄六位数八位数,没有人因此觉得货币贬值,高单位计数本身不是通胀信号。

顺手驳掉 bits 方案

文档有一节专门点名 BIP-176 的 bits 提案(一个 bits 等于一百万分之一比特币,即一百聪)。作者的批评路径很直接:bits 只在部分场景压缩了小数位,没有触及「显示与账本脱节」的根本问题;而且引入一个中间面额会制造新的换算层——聪、bits、BTC 三档并存,用户要背的换算表反而更长。重命名方案则一步到位:显示层只剩一个整数单位,旧的 BTC 代码另作它用。至于 informal 的 satoshi 与 sat 称谓,草案直接把两者都标记为弃用,要求一切界面与文档统一改称 bitcoin。

一次显示变更的真实成本

把这份草案放回现实,就能理解为什么显示层提案往往比协议提案更难产。交易所数据库里的价格字段按 BTC 计、按聪计的都有;钱包地址簿、账单导出、历史报表、智能合约前端显示的八位小数;再加上十年媒体存档里的所有报价。BTC 代码保持原义确实是聪明的减震设计——金融接口不用重写,需要动的只是「口语与 UI 里的 bitcoin 一词」。但恰恰是这个词的语义迁移无法被规范强制:语言用法不由仓库投票决定,而这份 Informational 草案自己也清楚它没有任何强制力。

快速问答

问:如果 BIP-177 被广泛采用,我的 0.5 个比特币变少了吗? 答:没有,账本余额与 BTC 计价完全不变,变的只是口语与某些界面上「比特币」一词对应的整数。

问:它和 BIP-172 给最小单位定名聪是什么关系? 答:172 解决「最小单位叫什么名字」,177 解决「最大单位这个名字该配给谁」,两者在同一张换算表上动不同的格子。

问:这类提案为什么常被当玩笑? 答:因为它不改变任何密码学事实;但它赌的是注意力与习惯,这恰是显示层标准的真正难点。

一条对照账

假设一枚比特币报价十万美元,0.003 枚按现行读法是三千美元;换到新读法,余额显示为三十万个「比特币」,每个单价约 0.03 美元——就像钱包里有三十万枚日元硬币。数字完全等价,心理温度完全不同,这正是草案想利用的效应,也是反对者警惕的来源。

常见误区

一是以为改单位要动共识、会分裂网络——本提案与硬分叉无关;二是担心 BTC 行情混乱,草案已明确 BTC 代码语义锁死;三是把 sat 这个称呼的消亡当成既定事实,它只是草案的建议,社区语感并不归仓库管辖。

风险提示:本文解释单位表示类提案,不构成投资建议;任何换算与报价请以交易与账本的原始整数为准。