刚入门区块链的程序员应该看些什么?
来源 | 知乎
作者 | Fickr Sung孫啟誠
毫无疑问,区块链将使得程序员迎来第三春,这个机会在现阶段只属于程序员。
曾经,乔布斯赶上了个人电脑的风潮,创立了引领潮流的苹果电脑。
曾经,盖茨赶上了操作系统的拓荒期,创立了全世界每天都在使用的Windows。
曾经,谷歌赶上了信息孤岛的困惑期,创立了连接所有信息的Google。
曾经,还有安卓、IOS、Photoshop、Facebook......
你错过的浪潮太多了。
时代造英雄,你空有一身顶级的造船本领,却没有了海洋,英雄无奈迟暮中。
可是,当区块链大潮到来时,一切都不同了。
身怀绝技的程序员有了大展宏图的历史性机会。
你可以创立区块链时代的Windows,也可以创立区块链时代的Internet浏览器,也可以创造Photoshop、Facebook...
一切的底层协议,都由你说了算。
程序员们,该是时候,毅然决然,懂点区块链技术了。
以下整理自知乎作者Fickr Sung孫啟誠关于区块链学习的清单,希望对你有所帮助。
笔者从2015年开始研究区块链技术,也算是对区块链有一定的了解。预估看到本文的读者为想要入门区块链,那么本文也主要是进行一个入门级别的介绍。只是入门级别介绍,不适合区块链从业人员提升学习。
区块链是什么?
区块链有很多的定义,大家的说法都不一样,业界都还没有统一。每个人心中都有自己的哈姆雷特。所以此处就不做定义了。也可以参考其他回答。
那么我主要推荐一些关于区块链概念的学习资料,看完我所推荐的资料,你应该对这门技术有一个自己的了解:
预备知识
00.一个故事告诉你比特币的原理及运作机制:
http://blog.codinglabs.org/articles/bitcoin-mechanism-make-easy.html
01.区块链是什么 | 巴比特
http://www.8btc.com/what-is-blockchain
正式学习
02.中本聪的关于比特币的白皮书。
英文原版:Bitcoin: A Peer-to-Peer Electronic Cash System
https://bitcoin.org/bitcoin.pdf
中文翻译版本:比特币白皮书:一种点对点的电子现金系统
http://www.8btc.com/wiki/bitcoin-a-peer-to-peer-electronic-cash-system
这份白皮书是区块链的起源,也是区块链从业人员必须要看的。
03.普林斯顿大学的公开课:
Bitcoin and cryptocurrency:
https://www.coursera.org/learn/cryptocurrency
内容讲的很透彻。
密码学原理,bitcoin的基本概念,共识机制,区块链现状 ,区块的应用中问题,包括比较新的侧链都有讲到。
基本也是从业人员必看的。
04.Master Bitcoin这本书:
中文名:《精通比特币》
英文名:《Master Bitcoin》
我自己之前并没有在jd/tb/dd/amz找到这本书,所以附上中文电子版本:(链接: https://pan.baidu.com/s/1sl7IMz7 密码: uq7g)侵删。
这本书极其推荐去看一下,内容由浅入深,基本概念,代码分析都是有的,密码学也讲的很通俗易懂。
通过以上资料的学习,基本对于区块链就有了一个基本的了解。
从业务角度学习区块链技术?
01.工信部的白皮书:
链接: https://pan.baidu.com/s/1bGeBi2 密码: ctbn
02.香港金管局的白皮书:
链接: https://pan.baidu.com/s/1mh8sGwK 密码: 25nh
03.腾讯关于TRUSTsql的白皮书:
链接: https://pan.baidu.com/s/1bGeBi2 密码: ctbn
04.《区块链从数字货币到信用社会》--长铗著作
长铗前辈的讲解可以说是非常透彻,而且对于未来的展望也很有现实意义。
05.《区块链:定义未来金融与经济新格局》-张健著作
作者为火币网技术副总裁可以说是个奇才,把概念讲的非常清楚。
06.世界经济论坛区块链报告:
链接: https://pan.baidu.com/s/1nuFcpKH 密码: mbxf
07.国内证券公司报告:
链接: https://pan.baidu.com/s/1nuFcpKH 密码: mbxf
08.美国政府公布的15大区块链医疗研究论文:
链接: https://pan.baidu.com/s/1dFhIRr7 密码: 3fap
09.欧洲央行分布式账本技术报告:
链接: https://pan.baidu.com/s/1dFhIRr7 密码: 3fap
10.其他资料就不太方便共享了。
我觉看了上面推荐的这些书和报告,你应该从业务角度对于区块链技术有了一个比较深入的了解了。
从技术角度学习区块链技术?
基础阶段
01.《区块链开发指南》-作者申屠青春:
作者多余比特币底层的研究可谓是非常深入,讲解的也非常通俗易懂。
02.《区块链技术指南》-作者邹均:
作为国内第一本从技术角度讲解区块链的书籍,值得一读,2016年出版以来一致评价不错。
03.《区块链 原理、设计与应用》-作者杨保华陈昌:
陈昌前辈作为纸贵的CTO、记得之前的墨链就是基于Hyperledger Fabric的,所以这本书对于Hyperledger 相关开源产品的讲解很透彻。
以太坊部分
04.以太坊介绍:
官网:Ethereum Project
https://www.ethereum.org/
中文学习社区:EthFans | 以太坊爱好者
http://ethfans.org/wikis/Home
GitHub:ethereu
https://github.com/ethereum
05.以太坊白皮书:
中文版:EthFans | 以太坊爱好者
http://ethfans.org/wikis/以太坊白皮书
06:Solidity语言(以太坊开发推荐语言):
官网:Solidity - Solidity 0.4.19 documentation
https://solidity.readthedocs.io/en/develop/
07.web3.js(与以太坊交互的js api):
网址:https://github.com/ethereum/web3.js
论坛:http://forum.ethereum.org/categories/ethereum-js
08.truffle框架:
官网:TruffleFramework.com - Truffle Suite
http://truffleframework.com/
以太坊开发的瑞士军刀,几乎是一站式解决方案。
09.Open-zeppelin合约审查:
官网:OpenZeppelin
https://openzeppelin.org/
10.《Ethereum: Blockchains, Digital Assets, Smart Contracts, Decentralized Autonomous Organizations》:
没有中文版,只有亚马逊有卖
Hyperledger 开源项目学习
01.Hyperledger 基本信息:
官网:https://www.hyperledger.org/
02.Fabric 学习:
官网:https://www.hyperledger.org/projects/fabric
其他
01.BigchainDB:
官网:BigchainDB • • The scalable blockchain database powering IPDB.
https://www.bigchaindb.com/
这个是我比较看好的一个项目
02.IPFS:
官网:IPFS is the Distributed Web
https://ipfs.io/
这个据说是一个取代http的价值传输协议,比较看好
03.国内的布比:
官网:布比区块链,让数字资产自由流动起来
http://www.bubi.cn/
个人认为值得研究《区块链技术原理与底层架构》,这本书有详细讲解布比的技术实现。
学习资料推荐与共享?
图文教程
在CentOS 6.5上搭建以太坊私有链
http://www.huiyanghua.com/article/plant/469/4707.html
创建自己的私有比特币测试链
https://bitshuo.com/topic/5847b86b63baf1df6cad0d6f
以太坊智能合约编写实例
http://blog.csdn.net/u013137970/article/details/53018423
以太坊智能合约编程之菜鸟教程
http://ethfans.org/posts/101-noob-intro
通过truffle部署以太坊智能合约
https://bitshuo.com/topic/584241f863baf1df6cad0d40
Hyperledger 源码分析之 Fabric
https://yeasy.gitbooks.io/hyperledger_code_fabric/content/
programming blockchain in c#
https://programmingblockchain.gitbooks.io/programmingblockchain/content/
书
Nodejs开发加密货币
http://bitcoin-on-nodejs.ebookchain.org/
精通比特币
http://zhibimo.com/read/wang-miao/mastering-bitcoin/
区块链技术指南
https://yeasy.gitbooks.io/blockchain_guide/content/
区块链:定义未来金融与经济新格局
http://product.dangdang.com/23992352.html
Hyperledger 源码分析之 Fabric
https://yeasy.gitbooks.io/hyperledger_code_fabric/content/
programming blockchain in c#
https://programmingblockchain.gitbooks.io/programmingblockchain/content/
csdn的blockchain知识库
http://lib.csdn.net/case/blockchain
History of cryptography
https://en.wikipedia.org/wiki/History_of_cryptography
公钥与私钥
http://www.blogjava.net/yxhxj2006/archive/2012/10/15/389547.html
什么是椭圆曲线加密(ECC)
http://8btc.com/article-138-1.html
比特币背后的密码学原理
https://www.jianshu.com/p/225ff9439132
密码学一小时必知
https://blog.helong.info/blog/2015/04/12/translate-Everything-you-need-to-know-about-cryptgraphy-in-1-hour/
现代密码学实践指南
https://blog.helong.info/blog/2015/06/06/modern-crypto/
SafeCurves:choosing safe curves for elliptic-curve cryptography
https://safecurves.cr.yp.to/
希望以上答案可以对你有所帮助!
推荐阅读
了解更多区块链技术及应用内容
敬请关注: