21M基于来源的回答

为什么比特币只有2100万枚?

从区块补贴和Halving,到由Full Node独立检查的共识代码。

比特币的供应受限,是因为有效区块只能按照递减的区块补贴计划创造新单位。每个完整验证节点都会独立检查这条规则。众所周知的2100万是这一计划的取整结果,并不是存放在某家公司数据库里的数字。

01

发行始于区块补贴

矿工可以在有效区块中加入coinbase交易。其输出总额不得超过该区块高度允许的发行补贴加上交易手续费。手续费转移已有的比特币,只有补贴才创造新单位。coinbase奖励超额的区块无效。

02

Halving使剩余发行量收敛

区块补贴每210,000个区块减半。将越来越小的时期相加,会得到有限的几何级数和。由于比特币按整数聪计量,补贴最终向下取整为零,因此发行总量会在略低于整整2100万枚时停止。

03

可信度来自独立验证

保护上限的不是口号。运行自有Full Node的用户按照同样的共识规则检查每个区块。改变发行计划需要用户接受不兼容的规则;单靠算力无法让一个支付过多奖励的区块变成有效区块。

50 BTC初始区块补贴
210,000每个补贴时期的区块数
1亿一枚比特币包含的聪数
约2140年预计区块补贴结束时间
01

规则存在于验证中,而非中央计数器中

Bitcoin Core根据区块高度计算允许的区块补贴。节点随后检查coinbase交易索取的金额是否不超过该补贴加手续费。不存在管理员可以改写的总供应量主变量:每个节点都根据自己接受的区块重建发行历史。

02

为什么几何级数趋近2100万

前210,000个区块允许每块50 BTC的补贴。之后各时期依次减半为25、12.5、6.25 BTC,以此类推。在理想算术中,50 × 210,000再乘以级数1 + 1/2 + 1/4…等于2100万。但比特币只计算整数聪,因此反复进行整数除法最终会把补贴截断为零,实际供应上限略低于这一整数。

03

矿工提出发行方案,节点接受或拒绝

矿工可以构造任意候选区块,甚至给自己分配过高奖励。这并不会让区块有效。Full Node会独立拒绝它,经济参与者不会把该分支的输出视为比特币。算力在有效候选区块之间进行选择,并不能改写有效性规则。

04

提高上限会产生不兼容规则

代码始终可以修改,但用户必须自愿运行修改后的代码。保留当前上限的节点会拒绝通胀区块,因此结果会是网络分裂,而非悄悄稀释现有币。上限的可信度依赖确定性的代码、独立验证、经济协调,以及说服持币人接受自身被稀释所需的高昂代价。

05

稀缺性只是货币政策的一部分

已知上限不保证价格、采用程度或稳定性。比特币保证的是更有限的一点:任何人都能核验过去的发行,并根据自己执行的规则计算未来最大发行量。需求、流动性、监管、丢失的密钥和市场结构均不在这一保证之内。

2100万上限不是物理定律,而是一条社会与技术层面的共识规则。它的可信度建立在开放代码、高昂的协调成本和独立验证之上。

01丢失的币会降低上限吗?

它们不会改变发行上限,但可能减少实际可花费的数量。协议无法可靠地区分丢失的密钥和极有耐心的持币人。

02矿工能创造额外比特币吗?

矿工可以发布这样的区块,但遵守规则的节点会拒绝它。算力不能让无效的coinbase奖励变成有效奖励。

03为什么恰好是2100万?

这是初始每块50 BTC补贴、每期210,000个区块以及反复减半共同产生的取整结果,不是一个独立的神奇常数。

04发行结束后,什么支付矿工收入?

设计预期交易手续费会取代区块补贴。未来手续费市场是否充足是经济问题,不是供应上限内含的保证。

21M2100万枚上限货币政策BTCBitcoin协议½Halving货币政策SUB区块补贴货币政策NODEFull Node网络RULES共识规则协议