术语表 /挖矿与共识
创世区块
又称区块0。
- 创世区块是什么?
- 创世区块是比特币区块链的第一个区块,于2009年1月3日写入软件代码,也是唯一一个其50枚比特币奖励永远无法花费的区块。
每个比特币节点都从同一个硬编码的区块开始,而不是下载该区块,因为在它之前没有任何内容可供校验。它的时间戳1231006505对应2009年1月3日18:15:05 UTC,其 coinbase 字段载有当天早晨伦敦《泰晤士报》(Times of London)的一条标题。如果您的软件得出的创世区块与此不同,您就不在比特币网络上。
运作方式
创世区块是唯一一个没有任何节点会对照父区块进行验证的区块,因此它无法通过网络传输,只能由各方共同认定。
它存在于源代码中,位于链参数文件里,与测试网(testnet)、signet 和 regtest 各自对应的起始区块并列。每个网络都有自己的创世区块,节点正是据此判断自己处于哪个网络:测试网节点沿用相同的 coinbase 信息,但时间戳和随机数(nonce)不同,因此产生不同的哈希,两个网络永远不会意外合并。只要改动创世区块的一个字节,您就创建了一条没有任何对等节点愿意连接的私有链。
整个区块共285字节,只包含一笔交易,即支付最初50枚比特币的 coinbase 交易。这些比特币无法花费,原因并不是某条规则禁止。Bitcoin Core 从不把创世区块的 coinbase 输出放入其未花费输出集合,这是区块加载方式造成的副产物,并非刻意设计,因此任何试图花费它的交易,所指向的都是网络认为并不存在的输出。所有实现都保留了这一特性,因为改动它会毫无意义地使链分叉。
此后有一段时间没有任何区块跟进。区块1直到2009年1月9日才被挖出,已是五天多以后,当天也是0.1版软件在 Cryptography 邮件列表上发布的日子。这段间隔正是创世区块常被描述为“公布之前”的原因:它出现时,还没有任何其他人可能在运行这套代码。
至今仍有人向创世地址1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa 转入比特币作为致敬。这些后来的付款是普通输出,由普通交易创建,持有该密钥的人可以花费它们。只有最初的50枚被冻结。
购买比特币时为何重要
共用比特币的创世区块并不能证明某种币的任何性质,而且有数个项目正是靠这种混淆来销售。
Bitcoin Cash 于2017年8月1日在区块478,558处分裂出去。Bitcoin SV 于2018年11月15日从 Bitcoin Cash 分裂。Bitcoin Gold 于2017年10月在区块491,407处分裂。它们都包含完全相同的创世区块,相同 coinbase 字段中的相同标题,以及相同的最初若干年历史,因为分叉会复制其离开之前的全部内容。因此,一个项目可以如实地说它的链始于2009年1月3日,但仍然是另一种资产,价格不同、规则不同,安全性也只有一小部分。
区分各条链的是分叉点之后的一切:各方执行的共识规则,以及链顶端背后累积的工作量证明。购买时,真正能识别比特币的是您的平台所交易的代码、您的钱包生成的地址格式,以及您的节点所跟随的链。这些都不是创世区块。
第二个实际用途是验证。您的节点进行初始同步时,从区块0开始向前逐块推进,检查每一笔区块补贴、每一个签名和每一个链接。创世区块是这一过程中唯一来自您自己而非网络的输入,这正是该过程具有意义的全部原因。从项目自己的发布页面下载软件副本并核对其签名,才能使这个起点真正属于您。
此外还有诈骗这一层。"Satoshi era" 币的兜售信息、被当作原始比特币出售的链,以及要求您向创世地址转账以解锁倍数收益的信息,都利用同一种误解。本站的诈骗指南介绍了这类手法。
coinbase 字段中的标题
创世区块的 coinbase 输入载有一段69字节的纯文本数据,用十六进制转 ASCII 的转换工具,一秒钟即可读出。
这些字节解码后为:The Times 03/Jan/2009 Chancellor on brink of second bailout for banks。这是2009年1月3日星期六伦敦《泰晤士报》的头版标题,指的是 Alistair Darling 和英国第二次银行救助。
它同时起到两个作用。其一,它说明了这套系统为何而建,是整个协议中唯一的编辑性内容。其二,它是一种密码学中沿用数十年的时间戳证明:该区块不可能早于这份报纸出现,这就为链的年龄设定了一个严格的下限,且无需信任时间戳字段。任何声称曾挖出更早比特币链的人,都必须解释他们不可能知道的这条标题。
创世区块 vs 比特币白皮书
比特币有三个看似合理的生日,人们经常把它们混为一谈。白皮书于2008年10月31日发布到 Cryptography 邮件列表:这是一份九页的设计文档,没有代码,也没有链。创世区块于2009年1月3日被挖出:这是账本的第一个状态。0.1版软件于2009年1月9日发布:从这一刻起,其他人才可以加入。白皮书描述的是一套系统,创世区块则启动了这套系统。
创世区块 vs 中本聪
"Satoshi's coins" 几乎从不指创世区块的50枚。Sergio Demian Lerner 对早期区块随机数模式的分析,即所谓的 Patoshi 模式,把2009年期间约110万枚比特币归于单一矿工,而这些是位于普通地址中的普通可花费输出。创世区块的奖励则是另一回事,任何人都无法花费,中本聪也不例外。因此,当有新闻报道某个沉睡已久的早期钱包发生了转移时,那绝不是创世区块,也永远不可能是。