比特币:中本聪源码早期版本流出:区块链原名时间链,比特币内置虚拟扑克游戏

Odaily星球日报译者|Moni

本周,一个比特币源代码早期版本浮出水面,立刻引起了加密货币社区的热议。根据“中本聪”此前在论坛上发布的旧贴和邮件列表显示,在2009年1月3日比特币网络正式上线之前,他曾将一个私人版本的比特币源代码分发给了一些人。预发布的比特币,以及一个完全不同哈希算法的废弃创世区块

从3月13日开始,加密货币社区一直在讨论“中本聪”最初的比特币源代码,同时大家也发现“中本聪“很可能在比特币区块链官方发布之前,曾将一个私人版本的比特币源代码分发给了其他人。这件事的起因,是著名比特币支持者FrancisPouliot分享了一个非常古老的“中本聪“源代码版本,同时他也展示了”中本聪“写的一封信,其中详细说明了他将一些”主要文件“发送给了一位叫做JamesA.Donald的人。“中本聪“在2008年11月17日发送给JamesA.Donald的这封信中写道:“我的意思是一个节点只需要延迟交易池来获得它拥有的最佳分支,目前能够想到的分支就是最好的分支,这个分支将有区块组成,也是延迟交易池所需要的。我想我已经覆盖了对等网络广播机制,每个节点向其邻居节点发送一个包含交易和新区块哈希的库存列表。邻居节点会发送请求获取他们还没有的项目,如果超时项目就永远不会通过,他们会再次向拥有该项目的其他邻居区块发送请求。由于所有、或是大多数邻居区块应该拥有每一个项目,因此即便这些项目被一个区块弄得乱七八糟,他们也可以从其他区块中获取,但一次只能尝试一个区块。库存请求数据方案引入了一点延迟,但请求速度最终会获得提高,因为额外数据区块将被保留在传输队列之外,同时也会节省带宽。在过去的一年半时间里,我一直在处理所有这些细节工作,并进行代码编写,但仍有很多工作要做。白皮书里还没有涉及功能细节,但源代码即将推出,我把一些主要文件发给你了”而在分发给Bitcointalk.org成员“Cryddit”的源代码中,也有一些被认为是最早比特币代码版本的有趣发现。举个例子,在“Cryddit”收到的比特币代码版本里出现了“比特币矿工”这个术语,这似乎是中本聪第一次将这些网络参与者描述为“矿工”。有趣的是,在比特币官方白皮书中并没有使用“矿工”这个术语——在整篇文章中,他们都被称为“节点”。此外,根据“中本聪”发送给“Cryddit”的源代码,区块链这个词其实最初被成为“时间链”。根据Bitcointalk.org用户Deepceleron在2009年1月3日的截图显示,在区块213有一个为发布的区块链和三个其他连接,如下:

RSK联合创始人:被认为是中本聪的早期矿工Patoshi最初或限制了算力:比特币初创企业RSK联合创始人、Patoshi挖矿模式研究者Sergio Demain Lerner发文称,早期比特币矿工Patoshi可能在当时故意限制了自己的算力。数据显示,在每个“区块间隔”的前5分钟内,该矿工都会将矿机关停。Lerner认为Patoshi这么做可能是为了给其他矿工一个公平的机会。

注:Patoshi模式描述了一个使用略微不同的挖矿算法并开采了约110万个比特币的矿工,大多数人认为他是中本聪。(Decrypt)[2020/6/28]

比特币早期版本源代码种是这样解释的:“时间链是一个树状结构,从根部的创世区块开始。每个区块都可能会有多个候选区块成为他们下一个区块。通过主链/最长链,pprev和pnext会连接到一个路径上。区块索引可能有多个pprev指向它,但是pnext只指向最长的分支。或者,如果区块不是最长链的一部分,区块索引可能就会为空。”该早期版本源代码中还提到:“节点将新交易收集到区块里,并将这些交易散列到哈希树种,然后扫描nonce值,以便让区块的哈希值能够满足工作量证明的要求。当节点解决了工作量证明之后,他们就会把区块广播给每个人,并且将区块添加到时间链种。区块中的第一个交易是一个特殊交易,其中会创建一个新代币,并且被该区块创建者所有。”比特币早期代码种另一个有趣的发现,就是“中本聪”其实最初命名了两个比特币更小的计价单位,分别是“coin”和“cent”,而不是现在人们所使用的“聪”。此外,比特币早期代码里还提到了某种评级系统,并谈到“原子”和“用户评论”等问题。下图:比特币最小单位最初并不是叫“聪”,而是叫“coin”或“cent”

声音 | 李启威:中本聪捐给了Grin 50个比特币只是个玩笑:莱特币创始人李启威于推特回应网友表示:“中本聪捐给了Grin 50个比特币只是个玩笑。”[2019/11/14]

根据比特币早期开发人员MikeHearn的说法,“中本聪”最初打算在比特币协议里面集成一个点对点平台,但是他并没有完成相关代码编写工作,因此这个想法也就被搁置了。MikeHearn还透露比特币远大马中有一个废弃的创世区块,而且具有完全不同的哈希算法。如果这个被废弃的创世区块是用来测试的,那么它诞生的时间可能会是2008年9月10日。

上图:从这部分代码来看,“中本聪”可能想要推出一个类似于Openbazaar的P2P平台,而且这个想法已经写在了比特币协议里。但是当比特币网络发布之后,构建这个平台的想法却被遗弃了。互联网中继聊天客户端、P2P平台和一个虚拟扑克游戏

动态 | Peter McCormack要求澳本聪提供自己是“中本聪”的证据:据ambcrypto报道,在律师的一份声明信件中,澳本聪另一项诽谤案的被告、英国加密节目主持人Peter McCormack表示,澳本聪称自己因受到诽谤,而导致他的声誉可能受到严重损害的指控纯属“异想天开”。McCormack还提出,如果澳本聪能提供令人满意的证据,证明他确实是比特币创造者中本聪,他将撤销有关“澳本聪是子”的声明。 McCormack还“邀请”原告在该信件发出后21天内给出上述答案,否则澳本聪将不得不给出一个非常“令人信服的解释”,解释他为什么拒绝提供“证据”,以及他究竟打算或期望在什么时候提供“证据”。[2019/8/10]

除了在2009年1月3日发布之前的早期版本之外,比特币0.1.0版本的源代码里也有一些非常有趣的细节。例如,最初的比特币软件里包含了一个互联网中继聊天客户端,旨在创建一种更简单的消息引导传递方式。此外,在比特币0.1.0代码版本的原始库里,还发现包含了一个创建虚拟扑克游戏的框架,这个游戏是在2008年4月16日被添加到比特币里的。不过,就在比特币网络正式发布之后,之前的P2P平台和虚拟扑克游戏在内的很多想法都没有实现。而互联网中继聊天客户端的想法虽然更新了几个版本,但在比特币0.8.2版本之后就被完全删除了。从下图代码种可以看出,比特币曾经还有一个没有被开发的内置虚拟扑克游戏。

声音 | 陈伟星:中本聪既是马克思也是列宁,扎克伯格更像“有土改意图的老蒋”:陈伟星刚刚发微博称,王兴兄比喻说:中本聪是马克思,扎克伯格是列宁。意思大概是中本聪是思想家,扎克伯格是实践家。这是低估了比特币的实践意义。我认为:中本聪既是马克思也是列宁,扎克伯格更像“有土改意图的老蒋”。[2019/6/22]

时至今日,没有人知道“中本聪”为什么要使用那些比特币术语,也不知道他对这些术语的具体定义是什么,以及为什么要放弃P2P平台和内置扑克游戏应用。“中本聪”一直在维护比特币代码,一直到0.3.19版本,但是却在2010年神秘离开,并把工作移交给了GavinAndresen。但至少,从本文提到的比特币源代码早期版本中,让我们对这位比特币神秘创造者有了更多了解。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

地球链

[0:15ms0-1:84ms