能介绍几本关于比特币和区块链的书吗?

中英文均可,现在我正在脑补关于比特币和区块链的知识,希望大神推荐
关注者
2,417
被浏览
406,419

87 个回答

因为工作需要,前年开始集中研究了一段时间区块链。在我们投资团队里有几位专门看区块链项目的男同事,他们在这方面比较专业。与他们比起来,我就是“小白”。所以接下来我的这份书单,可能比较适合跟我一样的人群——对区块链和数字货币感兴趣、想了解,但又基础为零或者比较薄弱的朋友。



1.《区块链技术驱动金融》:阿尔文德·纳拉亚南著,豆瓣评分8.3,是一本严肃的科学书籍,并不神化区块链,或者赋予其功能各种异想天开的描述。像我这样没有技术背景的读者读起来也可以接受。这本书的内容其实来自于普林斯顿几位教授的MOOC课程。英文水平好的同学也可以直接去看coursera课程。还有,这本书写于2015年,如果你是这个领域的创业者,可能会觉得现在的发展状况跟成书那个年代差别比较大。但如果是作为入门读物没问题,干货很多,态度也比较严谨。


2.《区块链革命》:“数字经济之父”Don Taspscott的作品,属于一本对区块链全景式描绘的作品,并涵盖了区块链在政府、企业、社会组织、商业体中的应用和创新。这本书的好处是比较全面,而且例子很多,围绕区块链的“分布式、开放性、隐私性”三点,举了许多例子帮助你理解。缺点是专业性比较强,适合对区块链最起码“一知半解”而不是一无所知的人阅读。另外可能是翻译的关系,书的前四分之一是很值得一看的,后面感觉有点重复,一直在翻来覆去讲同样的内容。


3.《IBM商业价值报告:区块链》:IBM商业价值研究院著,提出了“长数据”的概念,案例比较前沿。需要补充的一点是,因为我是做投资行业的,很适应行研报告这种文体,相对比较结构化。追求文学性和可读性的朋友就见仁见智了。


4.《展望:区块链+》 埃森哲中国著 ,探讨了区块链技术如何提升企业运营效率、优化基础流程等,投资行业比较喜欢听听这个视角的观点。


没有太多时间阅读严肃书籍的,我也有一些音视频材料推荐给你们——



1.首先是2018年的纪录片《区块链之新》:豆瓣评分8.8,片方走访了中国、美国、加拿大、日本、墨西哥、瑞士、法国、澳大利亚等四大洲十多个国家和地区的几十家区块链领军机构,打造了世界首部关注区块链技术的系列纪录片。一共6集,把最基本、最热门、普罗大众最关心的几个问题讲得都很生动透彻。如果你是纯小白,强烈推荐就先看这个入门吧。


2.《科技金融前沿:Libra与数字货币展望》:这是得到app上的一门课,主讲人穆长春,他的身份是央行支付结算司副司长、数字货币研究所所长,也是央行数字货币libra的负责人。因此这门课程的好处就很明显了:权威、一线、深入浅出。不仅讲了区块链技术的原理和特点,还详细解答了我们国家央行在数字货币领域的探索(听完觉得一旦实施这个Libra可真强大呀!)还提供了金融管理当局的视角。


3.此外,我也推荐你经常上OKEx,学习和了解关于区块链和数字货币的内容。OKEx是全球交易量第一的区块链数字资产交易平台,在它的官网上,除了交易以外,还有丰富的内容和资讯。有许多关于区块链、数字货币的科普文章都很值得一读。比如《区块链的运行原理》《10年暴涨2000万倍的比特币是如何炼成的?》如果你想系统地学习这方面的知识,不妨多上OKEx看看。


如果你是第一次接触OKEx,觉得内容太多不知道从何看起的话,我推荐OKEx与新浪科技联合出品的《区块链60讲》系列科普动画短视频,甩个地址给大家:OK区块链60讲

当然,OKEX学院也是系统地、与时俱进地学习区块链知识的好选择~



4.最后还有一个容易被人忽略的——“小破站”B站上有些up主把内容讲得也很透彻哦!而且他们的优势是表达风格特别让人喜闻乐见,如果你只有碎片化的时间,也可以去B站搜搜看。

不要看任何中文的忽悠,coursera上那个princeton的加密货币课程,可能是最好的最易懂最清晰最直击关键问题,而且重点是最精彩,我像追美剧一样连追三个season(week)的内容,真的是精彩,举个例,抛出问题,谈谈如何克服,再延伸,再抛个问题,再谈如何克服。。。中文世界的各种忽悠啥某国用几十亿台机器就能控制币圈之类的YY全部被一一驳斥干净。看了确实爽!

补充链接:Bitcoin and Cryptocurrency Technologies | Coursera

*******************************************

关于利用庞大算力获得支配权的问题,也就是51% attack和double spend的问题,有朋友问到,其实这个问题也是最早让我很困惑勾起学习欲望的问题。在下面讲一讲(主要是引用课程配套pdf的原文):

首先,这个是coursera那个课程的配套pdf: d28rh4a8wq0iu5.cloudfront.net ,里面其实反复在说这个问题。


P71 about 51% attack

Let’s say the 51 percent attacker creates an invalid block that contains an invalid transaction that represents stealing Bitcoins from an existing address that the attacker doesn’t control and transferring them to his own address. The attacker can pretend that it’s a valid transaction and keep building upon this block. The attacker can even succeed in making that the longest branch. But the other honest nodes are simply not going to accept this block with an invalid transaction and are going to keep mining based on the last valid block that they found in the network. So what will happen is that there will be what we call a fork in the chain. (所以说最多就是生成一个fork分叉,是否接受就看正常的node接受不了,这个后面会讲得更仔细)

然后提到掌握庞大算力的可以suppress正常transaction(如果他想),但是并不能阻止,实际上如果他这么做的话,只是让其他节点发现有人在进行攻击,因为交易信息本身并不依赖block chain去传送,仍然会广播出去. 原文说:

The attacker can further refuse to build upon blocks that contain such transactions. However, he can’t prevent these transactions from being broadcast to the peer‐to‐peer network because the network doesn’t depend on the block chain, or on consensus, and we’re assuming that the attacker doesn’t fully control the network. The attacker cannot stop the transactions from reaching the majority of nodes, so even if the attack succeeds, it will at least be apparent that the attack is happening.

其实这有点像DDOS攻击的意思,可行,但是耗资源,也只是给人添堵,没有实质安全问题。


P158进一步提到恶意的forking attack问题,也就是专门恶意制造double spending的情况,并利用庞大算力企图让自己制造的包括invalid transaction的blockchain成为最长链,并迫使其他node接受此最长链的做法。这样做(fork一个新的最长链)当然在庞大算力下是可行的,然而并无鸟用,因为别的节点会发现你这个新的最长链包含的交易和他们已经接受的交易发生了冲突(比如说一个Alice->Bob的交易,Bob和他交互的节点起码要发现6个block都包含了Alice->Bob的交易后才会认定Alice已经付款,现在某牛逼网络强行创建了新链说Alice并没付款,Bob和其周围节点当然能够发现),具体怎么处理,原文说:

It's not clear whether a forking attack would actually succeed in practice. The attack is detectable, and it’s possible that the community would decide to block the attack by refusing to accept the alternate chain even though it is longer.

也就是这种攻击要检测是很容易的,就看决定怎么处理(毕竟实际上没人这么做过),一般来说直接拒绝就完事了。

我觉得实际上就像git里面你有一个master branch,现在要merge一个新的pull request,然后发现在前面好几个commit之前就有conflict,这种情况直接abort呗~~~