我所推荐的比特币和区块链学习路径

比特币以及区块链,是2017大热的技术名词,同时2018势头只增不减。为什么?不就一个类似Q币的东西吗?为什么传得这么神?什么颠覆主权货币啦,什么新一代互联网啦。真的有这么神吗?背后的原因是什么。本文将尝试给出答案,并简述其原因。然后,推荐一条比特币和区块链的学习路径。

什么是比特币

比特币是中本聪2009年提出的一个点对点的数字加密货币系统。但是,这个定义背后的内涵和外延非常丰富。远不是这一句话能够概括的。我们可以从多种不同的视角,不同的方面,不同的层次去看它,看到不一样的东西。打个比方,就像一个建筑物,可以从物理,力学,建筑学,文化,社会等等角度去看它,都可以看到有意义的东西,而这些东西会很不相同。比特币也是一样。我们来尝试从技术,金融,社会的角度,来看一看比特币是什么。

1. 技术视角

中本聪在2009发表的论文,题目是《BitCoin: A Peer to Peer Electronic cash system》,翻译成中文就是《比特币:一个点对点的电子现金系统》。所以,比特币就是一个点对点的电子(现在一般说数字)现金系统。这个系统的参与者是很多的Peer(对等的人或者实体)。在这个系统中,所有的Peer都是平等的,没有任何一个节点的地位比另一个节点高。技术人其实比较好理解这个,我们所熟知的BitTorrent这个P2P的文件共享平台,也是这样一个Peer to Peer的网络。这样的网络没有中心节点。从一个分布式系统的角度来讲,没有了中心节点,就没有了单点失败的问题。整个系统的生命力异常的顽强。

仍然用建筑的比喻,我们都知道建筑要有基础,要有支柱,要有屋顶。有了基础,一切才有可能;有了支柱,建筑的主体才能立起来;有了顶,建筑才不漏雨。那么,比特币这栋建筑的基础、支柱和顶又是什么呢?

我所推荐的比特币和区块链学习路径

比特币的两大基础

  1. Hash
    Hash是一个Oneway road(单行道),从原文经过Hash算法可以得到hash值,但从hash值不可以反推出原文。只要hash值空间足够大,两个不同的原文,得到的hash值是不同的。或者换句话说,哪怕你对原文作了一个极其微小的改动,所得到的hash值也会相去甚远。Hash的这些特点非常重要,成为比特币的基础之一。
  2. 非对称加密
    传统的加密,秘钥只有一个,加密解密都用同样的秘钥,解密是加密的逆运算。而非对称加密就是加密秘钥和解密秘钥是不一样的。(对应的,加密算法和解密算法也不再是逆运算的关系)。我可以用一个秘钥(私钥)加密,把一个秘钥公布出去(公钥),其他人可以用我公布的公钥解密我发出的信息,但是他们却没有办法加密出类似的信息。通过这种方法可以验证一个信息是某个人发出的,这就是数字签名的基础。

比特币的两大支柱
1 Proof of Work共识算法
前面说了,比特币网络是一个Peer to Peer的,也就是由对等的节点组成的网络。这个Peer to Peer的网络里面每个节点都维护了全网全历史的一个公共账本。这就需要一个共识机制,来决定这个账本里面记录哪些交易记录,以及这些交易记录的顺序。

因为是点对点的网络,所有节点直接都是平等的,没有主从关系,要达成共识就不能像中心化的网络一样,大家都去中心服务器去取。那么怎么做呢?原理概括起来很简单,就是每隔一段时间,每个节点把整个网络产生的交易记录打包在一起,然后开始找一个随机数,要求把这个随机数和这堆交易记录一起做hash,得到的hash满足一个预先定义好的规则。谁最先找到这个随机数以及相应的hash,谁就抢到了这次的记账权,就可以把这些交易记录以一个区块的形式写到账本里,同时获得这个区块所对应的比特币奖励。

2 区块链存储机制
解决了谁说了算这个问题之后,还需要把共识结果存下来,并且保证没有人能篡改它,或者说,任何人篡改它一定会被所有人发现。比特币用区块链来作为交易数据的存储形式。

比特币的屋顶

  1. 漏洞防范(double spending问题防范机制)
    有了以上基础和支柱之后,比特币这座大厦就成形了,但是,这个大厦是不是安全,是不是能够确保任何情况下都能作为一个安全的公开账本,诚实准确地记录下所有的交易记录,让坏分子无机可乘?这就需要我们重点考虑漏洞防范的问题。简单概括起来,比特币的漏洞防范,以Proof of Work的共识算法为基础,在达成共识的同时,也防范了漏洞。

上面就是比特币这个建筑的主要结构。这里不详细介绍这些组成要素,下面列的材料里面有Page seven胡先笙的播客,对这些内容做了详细讲解。这里列出这些点的目的,是提供一个框架,希望能够帮助大家依此去理解网上纷繁复杂的比特币资料。

2. 货币视角

比特币创造之初的目标,是成为一个现金系统,或者说,一个货币系统。现在很多人争论比特币是不是货币。在我看来,那些说比特币不是货币的人,或许并没有理解货币的本质。货币,究其本质,有三种职能。这三种职能是:

  1. 交换媒介
  2. 价格度量
  3. 价值存储

而为了具备上面三种职能,充当货币的东西需要具备一些特性:

  1. 稀缺性(不可凭空产生)
  2. 便于保存、分割、交换和传输
  3. 价格稳定

凡是具有以上几种特性的东西,都可以充当某种形式的货币。历史上,货币曾经是贝壳,羊,金属等等,不同的货币他们的在以上几种属性上面表现的程度不同。黄金因为其稀缺性,便于切割,成为实物货币的最终归宿。所谓“货币天生不是黄金,黄金天生是货币”。直到现代社会,依靠着国家信用做支撑,发展出主权信用货币。凭借*对发钞量的控制,以国家权力确保其使用,以及比黄金更便于保存分割交换和传输,终于替代黄金,成为全社会使用的货币。

所以,要回答比特币是不是货币,不妨从以上几个视角来看,自然会有答案。(就价格稳定这一点来说,比特币目前当然还不满足,不过它在快速发展中,随着规模扩大和价值提升,其价格波动或许也会降下来。)

我所推荐的比特币和区块链学习路径

3. 社会视角

比特币因为其去中心化,开放的特点,对金融系统产生深远影响,进而对社会也会产生影响。举个例子,如果有个天才小孩,6岁就会写代码,做生意。在比特币之前,他没有身份证,没有银行卡,没有支付宝,没法开立银行账户,他没法收钱,也就没法开张赚钱。而在比特币系统中,他只要有台电脑连到网上,他就可以接活,做生意,甚至招员工,给员工发工资(通过比特币),用自己的天才改变世界。完全不需要任何授权,也就没有任何障碍。

这个去中心化的浪潮中,涌现出无数的新技术,概念,项目。其中一个重要的概念是DAPP(去中心化应用,Decentralized Applications)。以太坊作为一个通用的DAPP运行平台,进一步推动了这个去中心化的运动。去中心化的概念还可以进一步推广,比如去中心化的组织(DAO — Decentralized Autonomous Organization),从长远来看,很可能对社会的现有组织形式形成巨大的冲击。这方面的影响正在慢慢显现。

我所推荐的比特币和区块链学习路径

限于篇幅,本文不对细节做深入介绍。我的目标是给大家一个理解的框架,提示大家像多角度研究一个建筑物一样,从技术的,金融的,社会的,等等角度去看待比特币,以及其衍生项目,得出自己的结论。

材料

关于比特币和区块链网上的资料非常多,但是,良莠不齐。下面我给出一个我自己精心挑选的,高质量的列表,形成一个学习路径,希望对大家有帮助。

比特币

1. Page seven胡先笙

Page seven胡先笙的播客,有一期节目,题目是“不过是网游”,一共四集,是专门讲比特币的,讲得非常清楚,条理分明,妙趣横生。把比特币的技术原理,货币方面的意义,都讲得很到位。对于了解比特币是一个很好的入门。强烈推荐。播客在喜马拉雅和网易云音乐的电台里面都可以找到。

2. PluralSight

专业技术教学网站PluralSight的《Introduction to Bitcoin and Decentralized Technology》课程,系统地讲解了比特币的基本技术,高级技术,扩展应用,衍生项目,等等。对技术人来说,是非常好的一个材料。

地址:https://app.pluralsight.com/library/courses/bitcoin-decentralized-technology

3. 比特币白皮书

《Bitcoin: A Peer-to-Peer Electronic Cash System》,比特币创始人Satoshi Nakamoto开创性的文章。必读。

地址:https://bitcoin.org/bitcoin.pdf

4. Introduction to Bitcoin - Andreas Antonopoulus

Andreas Antonopoulus,比特币布道者,被称为BitCoin Guru,他在2011年接触到比特币之后,马上认识到其革命性意义,持续不断通过演讲,著书,写文章介绍比特币,对比特币的推广起了很大作用。《Mastering BitCoin》,《Internet of Money》是他的著作。他在YouTube上有一个频道,收集了他的众多演讲,主题覆盖方方面面,充满深刻的洞察。推荐。《Introduction to Bitcoin》是其中之一,可以从这个开始。

前面的材料讲的都是原理和技术,Andreas Antonopoulus的演讲在关注技术的同时,更关注比特币的社会影响和意义,看他的演讲有助于理解比特币在这些方面的意义。

频道地址:https://www.youtube.com/channel/UCJWCJCWOxBYSi5DhCieLOLQ
演讲地址:https://www.youtube.com/watch?v=l1si5ZWLgy0

5. 《Mastering Bitcoin》

在看了许多视频之后,你应该能做到对比特币的核心原理,主要技术都有了扎实的理解。这个时候,或许你需要一本书来把你的知识覆盖得更全面,整理得更系统。Andreas Antonopoulus的《Mastering BitCoin》这本书对比特币技术的方面进行了系统深入的讲解。值得推荐。这本书是开源的,在网上可以下到正式版。

地址:https://github.com/bitcoinbook/bitcoinbook

以太坊

6. Revealing Ethereum at Bitcoin Miami 2014 - Vitalik

比特币开启一个新时代之后,新的加密货币和区块链层出不穷,在这当中,一个最值得关注的项目是以太坊(Ethereum)。以太坊的目标是成为一个通用的去中心化计算平台,上面可以跑任意去中心化的应用,包括但不限于加密货币。这是一个异常雄心勃勃的计划。其创始人Vitalik Buterin是一个天才,创立以太坊项目的时候只有19岁。这是他2014年在比特币迈阿密大会上宣布推出以太坊的演讲。强烈推荐

地址:https://www.youtube.com/watch?v=l9dpjN3Mwps

7. 以太坊白皮书

《A Next-Generation Smart Contract and Decentralized Application Platform》,以太坊的白皮书,覆盖的范围与前面的演讲大体一致,但内容更详尽也更正式。同时,白皮书目前还在不断地维护更新,是最权威的理解以太坊的资料。

地址:https://github.com/ethereum/wiki/wiki/White-Paper

8. A Guide to Building Your First Decentralized Application - Siraj Raval

以太坊上可以跑任意的去中心化应用(Decentralized Application, DAPP)。当你通过Vitalik的演讲,以及以太坊白皮书,了解到这个概念是怎么回事了之后,你可以自己写一个DAPP,跑在以太坊上面。具体怎么做呢?YouTube播主Siraj Raval推出了一个视频,非常不错。

地址:https://www.youtube.com/watch?v=gSQXq2_j-mw

推荐路径

  1. 完整路径
    Page seven胡先笙 -> PluralSight -> 比特币白皮书 -> Andreas Antonopoulus video -> 《Mastering BitCoin》-> Vitalik speech -> 以太坊白皮书 -> Siraj Raval
  2. 高效路径
    Page seven胡先笙 -> PluralSight -> 比特币白皮书 -> Vitalik speech -> 以太坊白皮书 -> Siraj Raval
  3. 快速路径
    Page seve胡先笙 -> PluralSight -> Vitalik -> Siraj Raval

最后,这个领域很新,发展也很快。希望大家一起交流学习,有任何问题,可以直接找我讨论,或者留言。欢迎任何问题,评论,拍砖。

上一篇:基于Nginx 和 uwsgi 搭建 Django部署上线环境


下一篇:【测试_需求测试】什么是需求测试、如何做好需求测试