查看原文
其他

刚入门区块链的程序员应该看些什么?

2018-02-28 区块链大本营

来源 | 知乎

作者 | 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/


希望以上答案可以对你有所帮助!



推荐阅读




了解更多区块链技术及应用内容

敬请关注:


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存