加密货币社区近期热烈讨论了一份早期比特币源代码的曝光,这份代码揭示了中本聪在正式发布比特币网络之前的私人设计版本。根据2008年11月的邮件记录,中本聪曾将主文件提前分发给少数参与者,并提及“即将正式发布”。这一发现为我们理解比特币的演化提供了珍贵线索。
代码中的关键发现:从时间链到矿工命名
在这份流传给Bitcointalk.org成员“Cryddit”的代码中,几个术语与最终版本显著不同:
- “时间链”(Timechain)替代“区块链”
代码描述了一种树形结构,从创世区块开始,通过工作量证明机制形成最长链。这一命名反映了中本聪最初对时间戳顺序的强调。 - “矿工”概念的首次出现
尽管白皮书中使用“节点”一词,但在此代码中已明确将参与工作量证明的节点称为“矿工”,这一定义一直沿用至今。 - 货币单位的原始命名方案
最小单位并非今日的“聪”(satoshis),而是被命名为“coin”(100万单位)和“cent”(1万单位)。代码中还提及“原子”(atoms)和“用户评论”,暗示了某种评级系统。
被放弃的功能:P2P市场与扑克游戏
根据早期开发者Mike Hearn的分析,中本聪曾尝试将点对点市场功能内置至协议中,类似于后来的OpenBazaar。然而,该设计未完全实现,最终被废弃。
此外,代码库中还包含以下未完成功能:
- IRC客户端:用于简化节点间的消息引导,该功能持续到0.8.2版本后被移除。
- 虚拟扑克游戏:2008年4月添加的框架,旨在实现去中心化博弈应用,但从未部署至主网。
创世区块的测试版本与开发历程
代码中还存在一个哈希值完全不同的测试用创世区块,生成于2008年9月10日。这证实中本聪在正式发布前进行了多次实验。人类可读的调试日志显示,从0.1.0版本到0.3.19版本,中本聪始终担任首席维护者,直至2010年将管理权移交Gavin Andresen。
常见问题
中本聪为何提前分发代码?
旨在邀请少数开发者参与测试,确保网络发布前的稳定性。邮件记录显示,分发对象包括James A. Donald等早期密码学爱好者。
“时间链”与“区块链”有何区别?
核心概念一致,均指通过哈希链接的时序数据链。但“时间链”更突出时间戳的不可篡改性,后者则强调区块的链式结构。
为何废弃P2P市场功能?
可能因代码复杂度或专注于核心货币功能。中本聪未公开说明原因,但最终选择保持协议简洁性。
早期代码如何影响现代比特币?
矿工命名、单位设计等元素被保留,而市场、游戏等功能则启示了后续二层解决方案(如闪电网络)的发展。
如何验证这些代码的真实性?
代码片段与中本聪的邮件记录、论坛发言时间点吻合,且被多位早期开发者(如Mike Hearn)交叉验证。
中本聪消失前还做了哪些工作?
除代码维护外,他积极参与论坛讨论,解决早期网络漏洞,并推动了去中心化共识机制的完善。