量子学派之区块链课程第一章<创世纪 >读书笔记
本文由【区块链研习社】优质内容计划支持,更多关于区块链的深度好文,请点
击【区块链研习社】专栏:http://www.jianshu.com/c/b17f09dc2831
欢迎打赏: QR84f2aPKn3kupbroQPeF8hnhgjW9f1VeH
写在前面:
“区块链研习社”是一很有意思的自组织,加入后以输出文章倒逼阅读学习输入的方式学习,效果不错。
作为长期从事律师工作的文科生,对于理工科知识的认知是短板。感谢《量子学派》的课程,从另一个角度来开启了我的理性思维的大门。近期,又开始在《量子学派》学习《人人都懂区块链》课程,特记下读书笔记,以资记录。
第一章****创世纪
我从2007年开始设计比特币
从某一刻开始
我确信这世上存在一种不依赖信用的货币
我无法阻止自己去思考它!
——中本聪
一、 比特币的诞生
1、2008年11月1日,一封帖子出现在一个秘密讨论"群密码学邮件组"里,帖子大胆放言:“我正在开发一种新的电子货币系统,采用完全点对点的形式,而且无需受信第三方的介入”。帖子最后的署名是中本聪(Satoshi Nakamoto)
2、2009年1月3日,中本聪在赫尔辛基一个小型服务器上创建、编译、打包了第一份开源代码,尽管这份代码非常简陋,然而它还是正常运行了SHA256运算、RIPEMD-160运算,写入版本类型、Base58编码,在UTC(世界协调时间)2009年1月3日18:15创建的比特币世界的第一个区块(block),这一天被比特币信徒称为“创世日”,而这个区块也被称之为“创世块”,中本聪则成为了创世主。
2009年1月3日,这一天,标志着比特币的诞生,也标志着区块链“创世块”的诞生!
3、 在这一天里,中本聪通过“挖矿”得到了50枚比特币,区块链上从此也有了序号为零的区块,被称为创世区块。
4、 这个创世区块包含了诸多信息,大体可分为三部分。
5、第一部分是“身份证”,也就是区块的基本信息。
在中本聪的这个创世区块里,Number of Transaction表示交易数量。
数值为1,表明这个区块中只有一笔交易,这一笔交易是系统对中本聪挖矿的一笔奖励交易;
Height在行业中表示区块高度,表示区块的链接在主链的个数,也即达到了第几个区块,其为0说明这个区块为最底层区块,代表一种创世意义;
Difficutly则是比特币挖矿的一种难度,直观的展现出了创造这一区块的难度;
Timestamp表示一种交易时间的确认,也就是时间戳。2009年1月3日18:15,这个时间戳,标志着第一区块在这个时间被创建;
Size则是区块的大小,也叫字节;
Version表示数据结构的版本号;
Block Reward是一种奖励,在中本聪挖矿过程中,这是系统对“矿工”挖矿劳动的一种奖励,最终中本聪获得50个比特币的奖励;
Nonce表示一种随机值,起到一种验证哈希的作用,而验证的对象,就是哈希散列值,随机数不断迭代,直到哈希有效。
6、第二部分是区块的唯一标识,标识对应区块的哈希值是随机数,也是这个区块的唯一编号;
Previous Block表示前一个的区块的哈希散列值,Block #0作为最底层的第一个区块,前一个区块的哈希值也就为零,是无效值,而Next Block则表示下一个区块的哈希值,哈希就将各区块一个个连接起来,形成了链式结构,这也就是区块链之所以被称为链的原因。
Merkle Root是默克尔根,比特币系统中,每一个区块都有一个Merkle Tree,Merkle Tree是一类基于哈希值的二叉树或多叉树,其叶子节点上的值,通常为数据块的哈希值,Merkle Root哈希值存在每一个区块的头部,通过这个Root值连接着区块体,而区块体内则包含着大量的交易。每个交易都是一个数据块,而每一个交易本身都有自己的哈希值来个一标识自己。
7、第三部分是一个具体的交易详情,他会记载了每笔交易的转出方,收入方金额及转出方的数字签名,是每个区块内的主要内容,由于创世块是一笔产量交易,因此他没有收入,只有输出,也就是说他没有发起人的账户地址,只有接受人中本聪的账户地址,这笔交易是系统给他的1笔奖励交易50个比特币。
8、有意思的是,在这个具有历史性意义的时刻中,中本聪还在创世区块里写下了不可修改的一句话:“The Times 03/Jan/2009 Chancellor on brink of second bailout for banks”(2009年1月3日,这是英国财政大臣第二次出手纾解银行危机之时),这句话是当天泰晤士报的头版文章标题,一个财政大臣左支右绌的窘态,就这样被永久的记录在了区块链上,有人说这是一种证据,也是一种对全球金融体系的讽刺。危机的第二年,也可以说是全球动荡崩溃的金融局势引起的中本聪对传统货币的怀疑与思考。
9、2009年1月3日创世块的诞生并非偶然,毕竟早在2008年中,中本聪基本已经完备了自己的所有思考,他的所有思考都陈列在了他的论文里,也就是比特币的白皮书,而几乎所有关于比特币、区块链的讨论,包括诞生都缘起于那份白皮书,也就是中本聪的论文。因此,学习与研究,一定要去看看他的白皮书,区块链的思想源头——《一种点对点的电子现金系统》。
二、 比特币白皮书
1、面对传统金融体系难以解决的“双花”,即双重支付问题,中本聪在白皮书里提出了一个可行的方案。
他用理智,冷静的语言在里面提出:本文提出了一种完全通过点对点技术实现的电子现金系统,它使得在线支付能够直接由一方发起并支付给另一方,中间不需要通过任何的金融机构。
原文:"A purely peer-to-peer version of electronic cash would allow online payments to be sent directly from one party to another without going through a financial institution.
Digital signatures provide part of the solution, but the main benefits are lost if a trusted third party is still required to prevent double-spending.
We propose a solution to the double-spending problem using a peer-to-peer network……”
2、 白皮书,遵从学术习惯,采用“我们”作为第一人称,行文也是标准的论文格式,描述了一个基于密码学,而非基于信用、点对点电子现金系统的比特币系统,简单来说,内容主要包括:
.交易(Transactions)
.时间戳服务器(Timestamp server)
.工作量证明(Proof-of-proof)
.网络(Network)
.激励机制(Incentive)
.回收硬盘空间(Reclaiming Disk Space)
.简化支付认证(Simplified Payment Verification)
.组合和分割价值(Combining and Spliting Value)
.隐私(Privacy)
.计算(Calculations)
3、 白皮书体现了第三方信任问题是天然存在的,而区块链则是为了解决信任问题。互联网贸易,几乎都需要借助金融机构,作为可值得信赖的第三方来处理电子支付信息,这类处理系统在绝大多数情况下都运作良好,但仍然内生性地受制于“基于信用的模式”的弱点,中本聪指出,我们非常需要这样一种电子支付系统,它基于密码学原理而不基于信用。
4、 针对其所提出的电子支付系统的交易,中本聪将一枚电子货币定义为一串数字签名,每一位拥有者通过对前一次交易和下一位拥有者的公钥签署一个哈希散列的数字签名,并将这个签名附加在这枚电子货币的末尾,电子货币就发送给了下一位所有者。而收款人通过对签名进行检验,就能够验证该链条的所有者。
在这个交易过程中,问题在于,收款人将难以检验之前的某位所有者,是否对该枚电子货币进行了双重支付。针对这个问题,当通常引入铸币厂或第三方中介机构无法有效解决后,中本聪提出,为了在没有一个可信任的情况下完成这件事情,交易必须被公告,并且我们需要一个系统让所有参与者在一个单链顺序历史上达成共识。
5、 同时,中本聪的方案提出了一个时间戳服务器(Timestamp server)的概念,一个时间戳服务器的工作,就是通过把一组数据形成的区块的哈希散列值,加盖上时间戳,并不断增强形成链,向全网广播。
这里的一组数据就是指很多笔交易,然后把这一组数据打包成了一个区块,并把这个区块加盖上时间戳并做哈希,以此来保证时间的先后顺序,也就是确保单链顺序历史。有人常把比特币誉为挖矿,而这部分工作其实是一种矿工需要做的工作。因此时间会和区块挂钩。在此之前,历史挂钩的时间戳也由此不可被篡改。
6、 在中本聪的论文里,还有比特币区块链的一个核心部分,工作量证明,也就是广为人知的Proof of work,POW是为了实现一个基于P2P的分布式时间戳服务器,仅仅像报纸或者世界新闻网络组一样工作是不够的,中本聪提出一个类似于Adam Back's Hashcash的证明系统。
7、 在时间戳网络中,我们补充一个随机数的随机数表,这个随机数要使得该给定区块的hash散列值出现所需的那么多个0,我们通过反复尝试来找到这个随机数,直到找到为止,这样我们就构建了一个工作量证明机制.
8、 POW有一个精妙之处,就是证明难度会随着整个系统难度的提升而提升,因为计算机计算的硬件能力是不断提升的,算力中心化程度特别高。但这同时也提出一个顾虑,如今计算机顺利成指数式爆发增长,算力中心化程度形成两大权力中心,一个是以"代码开发和维护"的Bitcoin-Core团队技术权力中心,一个是以"矿工"为代表的算力权力中心,比特币社区这两大中心之间的较量,已经引起整个社区的焦虑。
9、 我们可以简单的这样认为,中本聪在比特币构架的世界里建立了这样一个游戏规则:所有参与比特币游戏的人都可以去抢答一道数学谜题,抢答成功者,系统将会自动奖励50个比特币,每四年会减半,抢答成功率与电脑算力成正比。
10、 中本聪提出这样一种激励机制,说明了货币从哪儿来的问题,他把每个区块的第一笔交易都特殊化,这样一笔交易产生一枚电子货币,同时他也会帮助鼓励节点们保持诚实。
11、 在比特币区块链的世界里,算力是至高无上的,在这个过程之中,信息一直在膨胀,区块链系统也会不断产生区块,与之而来的就是硬盘空间的回收需要。而巧妙之处就在于区块链不存储交易,而使用Markel Hash Tree的方式储存Root Hash,达到零知识证明。在计算机领域,Merkle Tree大多数用来进行完整性验证处理,在分布式环境下进行这样的验证实验,Merkle Tree会大大减少数据的传输量以及计算的复杂度。
12、 中本聪用其制定的规则告诉我们,如果我们设定区块生成的速率为每十分钟一个,那么每一年产生的数据为4.2MB,2008年的PC系统,通常的内存容量为2GB,按照摩尔定律预测,当时一年可以增长1.2GB,即使将全部的区块头存储在内存之中都不是问题,而回收硬盘空间所带来的问题就是简化支付认证的问题,因为有些节点已经不会持有全部区块信息,这里相当于一个博弈,一种储存与安全便捷的博弈。同样,中本聪的论文中用了一张图表明,只要有hash链就行,只要持有了hash作为标识,无论什么节点总能从其他节点上请求到原始信息。用户只需要持有一份特殊的区块头的拷贝,这份拷贝来自于最长的那条工作链证明,就可以通过网络节点和某处分支追溯到所需要的交易信息,这是储存与安全便捷的一个博弈结果。
13、 在比特币的白皮书里,中本聪用数学和算力构建出一个关于Bitcoin的神奇世界。从这份白皮书我们可以看出,中本聪不仅仅是一个加密专家、数学大咖、经济学者,而且还是一个心理学家,中本聪所设立的奖励机制,在人性对一夜暴富的疯狂追求下,成为比特币前行的最重要引擎之一。我可以计算出950万万亿中那个唯一哈希值,却无法计算人性的疯狂!
14、 我们再回归到比特币白皮书,白皮书里谈得最多的是加密技术,是整个比特币的基础,而这仅仅是天才的中本聪一夜之间就想出来的吗?从某种意义上来讲,中本聪只是加密技术界的一个集大成者,区块链的出现不是他一个人的成果。
三、 密码朋克说。
1、 让我们回到最初,中本聪首次现身的那种帖子上。帖子出现在一个秘密讨论群的密码学邮件组列表里,而中本聪在白皮书里提出的可行方案,也是基于密码学之上。我们要知道,基于密码学技术的比特币,其实并非加密货币的最原始首创。早在20世纪80年代,加密货币的最初设想就已经出现。大卫乔姆提出不可追踪的密码学网络支付系统,而这其实就是今天比特币的老祖宗,除此之外,大卫乔姆还发明了乔姆盲签名,可以说它是密码货币的始祖。
2、 1991年Stuart Haber和Scott stornetta发表论文:How to Time-Stamp a Digital Document,他们提出用时间戳确保数位文件安全的协议,这也就是今天所谓区块链链条的雏形。
3、 1991年菲尔齐默尔曼基于RSA公钥加密体系,开发了一个邮件加密系统PGP,他能够保证邮件内容不被篡改,而中本聪在其活动中的所有邮件都是通过PGP发出的。
4、 1997年亚当拜客(Adam Back)发明了一种哈希现金算法机制,而哈希算法在比特币的白皮书中,就被中本聪用来解决了比特币中零信任基础的节点共识问题。
5、 1998年戴伟(Wei Dai)提出了匿名的、分布式的电子加密货币B-money,在比特币的官网上,B-money被认为是比特币的精神先导,中本聪与之也交流甚多,有所借鉴。
6、 而一个独立数字货币的创造则始于1992年,一只蒂莫西梅为发起人,美国加州几个不安分的物理学家和数学家相聚在一起,出于对美国政府的天生警惕,这帮技术自由主义派创建了一个“密码朋克”小组,以捍卫未来数字世界的公民隐私,议题包括追求一个匿名的独立数字货币体系,狭义的说,“密码朋克”是一套加密的电子邮件系统。
7、 开始的时候,他们是这样说悄悄话的:……如果期望拥有隐私,那么我们必须亲自捍卫之,我们使用密码学,匿名邮件转发系统,数字签名以及电子货币来保障我们的隐私。
8、 密码朋克提倡使用强加密算法,他们反对任何政府规则的密码系统。他们宁愿容许罪犯和恐怖分子来开发和使用强加密系统,存在一定风险,但他们认为这是捍卫个人隐私所必须承受的。
9、 密码朋克运动兴起后,互联网货币的实验波澜迭起,这场造币运动充满了理想主义者的悲剧色彩,俱往矣。互联网兴起之时,无数天才相中电子货币,但无一例外均失败了。我们在加密货币所提到的所有人,其实都是密码朋克小组的成员,包括中本聪,同样也是。
10、 数字货币的诞生历程,就像是一次接力赛,非对称加密、点对点技术、哈希现金这些关键技术没有一项是中本聪发明的,他是站在前人的肩膀上才创造出比特币这一集大成者,然而中本聪却能纵横于不同领域,采撷各家之长,为我所用,终一蹴而就。
11、 不管未来结局如何,比特币的这场社会实践已经达到了密码朋克运动的顶峰。
四、 结语
1、 深谙密码学之道的中本聪,一直小心的隐藏着自己,他聪明而谨慎,所有公开消息都是通过暗网传达,很多人试图找到他,却始终没有人知道他是谁。
2、 2008年金融危机,他突然出现在密码朋克邮件列表中,提出自己的创意。
3、 2009年1月3日,中本聪发布了开源的第一版比特币客户端,宣告了比特币的诞生。
4、2010年12月12日,中本聪在比特币论坛发布最后一个帖子,活动频率逐渐降低。
5、 2011年4月他发布最后一项公开声明,宣称自己已经开始专注于其他事情。
6、 此后,中本聪消失,再未现身。
以上是第一课的笔记。无论区块链技术将来如何发展,至少自己得从基础的必要知识开始学习,以提升认知。比特币的白皮书,是区块链的第一手知识,是区块链的知识源头。此前的学习虽形成了一些认知。但最根本的知识仍然要从源头学起。鉴于英文原版翻译成中文后,难免会有信息传递的偏差。最好的方式是从英文原版白皮书开始学习。我准备这样开始。