04.20 想上手區塊鏈開發的程序員們,終於等到這本書!

想上手區塊鏈開發的程序員們,終於等到這本書!

據統計,截止到2017年底,全球已有20多個國家開始投資發展區塊鏈技術,並且有將近80%的銀行表示會啟動區塊鏈項目,有90多箇中央銀行加入了區塊鏈討論,以及90多個公司加入了區塊鏈聯盟,與區塊鏈技術相關的風險投資累計超過了20億美元,並且產生了3000多個區塊鏈相關專利

如果你對數字沒感覺,想想朋友圈每天刷屏的這些文章:

  • 區塊鏈一天,互聯網十年

  • 區塊鏈已勢不可擋

  • 2018將是區塊鏈技術加速落地元年

  • 區塊鏈已被寫入985/211名校課程

  • ......

你甚至產生了這樣一種感覺—— 再不學習區塊鏈,一眨眼幾萬年的生命就白白浪費了

想上手區塊鏈開發的程序員們,終於等到這本書!

圖片來自西喬《神秘的程序員們》(同題圖)請點擊此處輸入圖片描述

不過,講真,該幹啥幹啥。對這個領域完全不感興趣的小夥伴們就別跟著瘋狂的媒體一起焦慮和狂嗨了......另一方面,對於那些真的想徹底搞懂這個領域,甚至想把區塊鏈開發作為行當的程序員們,早下手為強啊(雖然看起來已經不夠早了,不過,有一句雞湯說得好,入坑區塊鏈最早的時間是十年前,其次是現在...)

問題來了,如果我們想從零開始入坑區塊鏈,或者已經有少量基礎知識,想直接上手開發,除了經常閱讀知名開源項目的代碼,還有什麼好書值得參考嗎?畢竟市面上區塊鏈開發的書一抓一把,而閱讀之後真正能上手開發的卻極為稀少!

嗯,回答這個問題不謙虛,首推圖靈剛上架的這本《區塊鏈技術進階與實戰》——讀完真的可以直接上手區塊鏈開發!這本書的作者們是浙大系區塊鏈頂尖研究者和一線開發者蔡亮、李啟雷和梁秀波老師。熟悉人民郵電出版社的小夥伴也知道,市面上最棒的一本 Docker 參考書《Docker:容器與容器雲》也是浙大系作者推出的......我們先看一下圖書,稍後會簡單介紹一下作者及他們自家的平臺。

定價:69.00元

  • 國內區塊鏈技術頂尖研究者和一線開發者出品

  • 中國工程院院士陳純等業內專業人士推薦

  • 專注介紹區塊鏈核心原理(乾貨)和應用技術(實戰)

  • 詳細解讀區塊鏈平臺 以太坊 和 HyperLedger

  • 注重實戰,全書包含 5 個完整實際項目案例

  • 參考本書實例即可快速開發自己的第一個區塊鏈應用

本書從實戰的角度出發,結合實際應用開發場景,對區塊鏈技術進行了全面介紹和剖析。

看一下作者團技術背景。

蔡亮,博士,副教授,浙江大學計算機學院軟件工程系主任,浙江省重大科技專項專家。主要從事區塊鏈、雲計算、網絡安全、可信計算和金融業務處理的研究,在國家級核心期刊和國際會議上發表了數十篇論文。參與了多項國家級或省部級科研項目,如國防軍工預研基金項目、國家創新基金項目、863項目等。獲得教育部科技進步一等獎、浙江省科技進步一等獎和三等獎。

李啟雷,博士,講師,杭州趣鏈科技有限公司首席技術官。主要從事體感人機交互、區塊鏈和移動互聯網技術等方面的研究與開發。作為核心研究人員參與國家863計劃和國家科技支撐計劃,在國內外知名學術期刊和會議發表論文九篇,獲得國家發明專利一項、軟件著作權一項。

梁秀波,博士,副研究員,杭州趣鏈科技有限公司副總經理。主要從事機器學習、區塊鏈、數字娛樂和移動互聯網等方面的研究與開發,曾赴法國進行為期一年的訪問研究。作為核心研究人員參與國家級和省部級科研項目近十項,主持企事業單位委託項目二十餘項。已發表論文十餘篇,獲得國家發明專利三項。

再來看看作者團創辦的杭州趣鏈科技有限公司的實力。

  • 2016年成立,創始人均畢業於浙江大學計算機學院,博士學位

  • 2017年4月,榮獲2017全球區塊鏈金融(杭州)峰會“區塊鏈技術與應用創新”雙十強

  • 2017年5月,自家平臺 Hyperchain V1.2 成為首批通過國家標準測試的區塊鏈系統

  • 2017年8月,唯一一家成功入選第10期微軟加速器的區塊鏈企業

  • 2018年1月,成功中標中國工商銀行區塊鏈項目

  • 2018年3月,拿下全球首份谷歌訂單,簽約10+國內外大中型銀行

此外,這本書得到了陳純、許再越、賁聖林、楊小虎、宋士正、史晨陽等業內專業人士的推薦,向上滑動可查看他們對圖書內容的評價。

▲向上滑動查看高手推薦

本書對以太坊、Hyperledger Fabric和Hyperchain的技術特點及內核代碼進行了詳細的分析,對各平臺的應用開發技術進行了介紹。相信本書對區塊鏈技術的愛好者和區塊鏈行業的從業者會有很好的參考價值。

——陳純,中國工程院院士,浙江大學計算機科學與技術學院教授

曾任浙江大學軟件學院院長和浙江大學計算機軟件研究所所長

本書基於浙江大學和杭州趣鏈科技有限公司多年的區塊鏈技術研發經驗,對知名的開源區塊鏈平臺以太坊和Hyperledger Fabric以及自研的Hyperchain平臺展開了深入剖析,在講解平臺功能的過程中,穿插說明了區塊鏈的關鍵算法和核心原理,並配有各個平臺的開發指南和項目案例,深入淺出地介紹了當前主流的區塊鏈開發技術。

——許再越,中國外匯交易中心副總裁

本書由浙江大學和趣鏈科技聯合撰寫,融合了浙江大學的理論研究成果和趣鏈科技的實際開發經驗,是一本實踐性非常強的區塊鏈技術圖書。

——賁聖林,浙江大學互聯網金融研究院院長

本書從技術原理、市場發展、政府規劃、應用場景和平臺對比等角度對區塊鏈進行了全景分析,對三個主流區塊鏈平臺進行了深入介紹,配有動手開發指南,並提供了實際項目案例說明和源代碼,是一本不可多得的理論與實踐相結合的區塊鏈技術圖書。

——楊小虎,浙江大學軟件學院常務副院長

本書非常務實,乾貨滿滿,給讀者呈現了當前區塊鏈技術發展的最新動態,所提供的案例內容翔實,其背後必然有腳踏實地做技術的“實戰派”團隊支持。相信本書會對有志於從事區塊鏈技術研究和應用開發的人員有幫助。

——宋士正,浙商銀行信息科技部總經理

本書按照區塊鏈基礎知識、開源平臺、企業級平臺和開發案例的順序介紹了區塊鏈技術的基本原理和開發技術,幷包含多個案例,非常適合相關技術人員由淺入深地學習區塊鏈技術。

——史晨陽,中國光大銀行信息科技部副總經理

內容講解方面,本書共分為四個部分。

第一部分介紹區塊鏈的基礎知識,使讀者快速對區塊鏈技術有一個整體認識。本部分包含了1章內容,即第1章,對區塊鏈技術的發展情況進行了全面分析,介紹了其概念、歷史、技術流派、關鍵技術和典型應用場景,通過對主流平臺進行對比分析,給出當前區塊鏈產業生態圖譜。

第二部分對知名開源區塊鏈平臺以太坊和Hyperledger進行詳細解讀,並介紹如何基於這兩個平臺進行區塊鏈應用開發。本部分包含了4章的內容。

第 2 章對以太坊的發展歷史、基本概念、客戶端、賬戶管理及以太坊網絡等基礎知識進行了介紹,並對以太坊共識機制、虛擬機、數據存儲和加密算法等以太坊關鍵模塊的核心原理進行了剖析,詳細介紹了以太坊智能合約的編寫、部署、測試與執行,最後對以太坊發展過程中的重大事件和目前存在的主要問題進行了分析探討。

第 3 章首先介紹瞭如何搭建以太坊的開發環境,包括Go語言環境、Node.js和npm的配置、Solc編譯器的安裝,以及如何使用以太坊geth客戶端搭建私有鏈;接著講解了以太坊智能合約開發的集成開發環境,包括Mix IDE和在線瀏覽器編譯器;然後講述了JSON RPC和JavaScript API兩種以太坊編程接口,通過這兩種接口可以實現和以太坊底層的交互,實現合約方法的調用;隨後講述了目前主流的以太坊開發框架與流程,包括Metero、Truffle和商業化開發中的分層可擴展開發流程;最後給出了第一個較為完整的以太坊應用開發實例。

第 4 章對Hyperledger Fabric進行了深入解讀,有助於讀者深入理解Fabric的底層實現原理。首先,介紹了Hyperledger及其子項目的發展現狀及管理模式,重點介紹了Hyperledger Fabric。之後,對Hyperledger Fabric架構進行深入分析,從成員服務、區塊鏈服務以及合約代碼服務三個方面探討Hyperledger Fabric的架構組成與特點,給出了Fabric架構設計和模塊組件。然後,給出了Chaincode代碼結構、調用方式和執行流程。最後,對交易背書流程展開了詳細分析。

第 5 章主要介紹如何在Hyperledger Fabric平臺上開發區塊鏈應用,首先講述了 Hyperledger Fabric的開發運行環境的搭建過程,然後給出了Chaincode開發和部署流程,最後介紹了CLI應用接口和SDK接口,並通過實例說明了如何基於這兩種接口開發Hyperledger Fabric的區塊鏈應用。

第三部分以自主可控聯盟區塊鏈Hyperchain為例對企業級區塊鏈平臺的核心技術進行分析,並介紹了基於Hyperchain的企業級區塊鏈應用開發技術。本部分包含了2章的內容。

第 6 章以企業級區塊鏈平臺Hyperchain為例,介紹了構成企業級區塊鏈平臺的核心組件的實現原理。企業級區塊鏈同公有鏈和私有鏈不同,它直接面對企業級應用的需求,對區塊鏈系統的安全性、靈活性以及性能都有著更加嚴格的要求。Hyperchain企業級區塊鏈平臺在優化傳統PBFT的基礎上設計實現了靈活、高效、穩定的共識算法RBFT,在智能合約的支持上選擇了支持開源領域活躍的Solidity語言,對其執行虛擬機進行了系統層面的優化,並通過對交易、交易鏈路、應用開發包等多層面進行加密處理,加強企業級區塊鏈的安全等級。此外,Hyperchain還設計實現了支持系統監控、合約編寫、合約編譯等多功能的企業級區塊鏈管控平臺。

第 7 章主要介紹了Hyperchain區塊鏈上應用開發的相關內容。首先,從交易調用、合約管理以及區塊查詢幾個方面介紹了Hyperchain平臺對外提供的主要接口;其次,從Hyperchain集群的配置、部署和運行等方面介紹瞭如何搭建一個可運行的企業級區塊鏈系統Hyperchain;最後以模擬銀行為例,介紹瞭如何在Hyperchain平臺上進行智能合約應用的開發。

第四部分介紹了多個區塊鏈實際應用項目案例,並對其開發過程和關鍵代碼進行了詳細分析。本部分包含了2章的內容。

第 8 章介紹了兩個基於以太坊的實際項目案例,每個案例的介紹均包括項目簡介、系統功能分析、系統總體設計、智能合約設計、系統實現和部署等部分,並通過相關下載鏈接提供了這些案例完整的源代碼。基於前面章節所學習的以太坊基礎知識和開發技術,讀者可對照本章的內容,一步一步地動手實踐,在實戰過程中更好地理解相關概念和技術,從而為自己基於以太坊構建區塊鏈應用項目打好基礎。

第 9 章介紹了兩個基於Hyperchain的企業級區塊鏈應用項目案例,每個案例的介紹均包括項目簡介、系統功能分析、系統總體設計、智能合約設計、系統實現和部署等部分。可以看到,利用Hyperchain可以構建功能完備、技術領先、符合企業級要求的區塊鏈應用。讀者可對照本章內容,通過Hyperchain提供的完善的開發接口,對區塊鏈應用開發進行深入的學習和實踐。

目  錄

第一部分 區塊鏈基礎

第1章 區塊鏈基礎入門  2

1.1 區塊鏈基礎知識  2

1.1.1 從比特幣到區塊鏈  2

1.1.2 區塊鏈定義  3

1.1.3 區塊鏈相關概念  4

1.1.4 區塊鏈分類  6

1.2 區塊鏈發展歷程  8

1.2.1 技術起源  8

1.2.2 區塊鏈1.0——“數字貨幣”  9

1.2.3 區塊鏈2.0——智能合約  9

1.2.4 區塊鏈3.0——超越貨幣、經濟和市場  10

1.3 區塊鏈關鍵技術  10

1.3.1 基礎模型  10

1.3.2 數據層  11

1.3.3 網絡層  16

1.3.4 共識層  17

1.3.5 激勵層  19

1.3.6 合約層  20

1.4 區塊鏈產業現狀  21

1.4.1 區塊鏈發展態勢  21

1.4.2 區塊鏈政府規劃  22

1.4.3 區塊鏈生態圖譜  25

1.5 區塊鏈應用場景  26

1.5.1 數字票據  26

1.5.2 供應鏈金融  27

1.5.3 應收賬款  27

1.5.4 數據交易  27

1.5.5 債券交易  28

1.5.6 大宗交易  28

1.5.7 其他場景  28

1.6 區塊鏈主流平臺  29

1.7 本章小結  31

第二部分 開源區塊鏈平臺

第2章 以太坊深入解讀  36

2.1 以太坊基礎入門  36

2.1.1 以太坊發展歷史  36

2.1.2 以太坊基本概念  37

2.1.3 以太坊客戶端  39

2.1.4 以太坊賬戶管理  43

2.1.5 以太坊網絡  46

2.2 以太坊核心原理  46

2.2.1 以太坊共識機制  47

2.2.2 以太坊虛擬機  49

2.2.3 以太坊數據存儲  51

2.2.4 以太坊加密算法  53

2.3 以太坊智能合約  53

2.3.1 智能合約與Solidity簡介  54

2.3.2 智能合約的編寫與部署  56

2.3.3 智能合約測試與執行  67

2.3.4 智能合約實例分析  71

2.4 以太坊重大事件與現存問題  74

2.4.1 The DAO攻擊事件  74

2.4.2 以太坊現存問題  75

2.5 本章小結  77

第3章 以太坊應用開發基礎  78

3.1 以太坊開發環境搭建  78

3.1.1 配置以太坊環境  78

3.1.2 搭建以太坊私有鏈  80

3.2 以太坊集成開發環境  83

3.2.1 Mix IDE  83

3.2.2 Solidity在線實時編譯器IDE  86

3.3 以太坊編程接口  89

3.3.1 JSON RPC  89

3.3.2 JavaScript API  94

3.4 DApp開發框架與流程  97

3.4.1 Meteor  97

3.4.2 Truffle  100

3.4.3 分層可擴展開發流程  102

3.5 第一個以太坊應用  104

3.5.1 優化MetaCoin應用  104

3.5.2 MetaCoin代碼詳解  106

3.5.3 MetaCoin應用運行  109

3.6 本章小結  111

第4章 Hyperledger Fabric深入解讀  112

4.1 項目介紹  112

4.1.1 項目背景  112

4.1.2 項目簡介  113

4.2 Fabric簡介  115

4.3 核心概念  116

4.4 架構詳解  118

4.4.1 架構解讀  118

4.4.2 成員服務  120

4.4.3 區塊鏈服務  124

4.4.4 合約代碼服務  127

4.5 合約代碼分析  128

4.5.1 合約代碼概述  128

4.5.2 合約代碼結構  129

4.5.3 CLI命令行調用  131

4.5.4 鏈碼執行泳道圖  132

4.6 交易流程  133

4.6.1 通用流程  133

4.6.2 流程詳解  135

4.6.3 背書策略  138

4.7 本章小結  139

第5章 Hyperledger Fabric應用開發基礎  140

5.1 環境部署  140

5.1.1 軟件下載與安裝  140

5.1.2 開發環境搭建  142

5.1.3 Go和Docker  144

5.2 鏈碼開發指南  147

5.2.1 實現智能合約的接口  147

5.2.2 智能合約的依賴關係  148

5.2.3 智能合約的數據格式  148

5.2.4 智能合約的接口解析  149

5.2.5 智能合約案例代碼分析  149

5.3 CLI應用實例  152

5.3.1 CLI 介紹  152

5.3.2 CLI 應用開發  153

5.4 SDK應用實例  163

5.4.1 SDK介紹  163

5.4.2 SDK應用開發  165

5.5 本章小結  169

第三部分 企業級區塊鏈平臺 Hyperchain

第6章 企業級區塊鏈平臺核心原理剖析  172

6.1 Hyperchain整體架構  172

6.2 共識算法  174

6.2.1 RBFT概述  174

6.2.2 RBFT常規流程  174

6.2.3 RBFT視圖更換  176

6.2.4 RBFT自動恢復  177

6.2.5 RBFT節點增刪  178

6.3 智能合約  179

6.3.1 智能合約執行引擎  180

6.3.2 HyperVM設計原理  180

6.3.3 HyperVM執行流程  181

6.4 賬本數據存儲機制  183

6.4.1 區塊鏈  183

6.4.2 合約狀態  185

6.4.3 Merkle樹  186

6.5 安全與隱私機制  189

6.5.1 多級加密機制  189

6.5.2 基於CA的權限控制  190

6.6 可視化監管平臺  191

6.6.1 Hypervision概覽  191

6.6.2 Hypervision區塊鏈管理  192

6.6.3 Hypervision合約管理  193

6.7 本章小結  194

第7章 Hyperchain應用開發基礎  195

7.1 平臺功能  195

7.1.1 JSON-RPC格式  195

7.1.2 交易調用  196

7.1.3 合約管理  200

7.1.4 區塊查詢  203

7.2 平臺部署  206

7.2.1 Hyperchain配置  207

7.2.2 Hyperchain部署  207

7.2.3 Hyperchain運行  209

7.3 第一個Hyperchain應用  210

7.3.1 編寫智能合約  211

7.3.2 部署與合約調用  212

7.4 本章小結  212

第四部分 區塊鏈應用案例

第8章 以太坊應用實戰案例詳解  214

8.1 基於以太坊的通用積分系統案例分析  214

8.1.1 項目簡介  214

8.1.2 系統功能分析  215

8.1.3 系統總體設計  216

8.1.4 智能合約設計  218

8.1.5 系統實現  224

8.1.6 系統部署  233

8.2 基於以太坊的電子優惠券系統案例分析  235

8.2.1 項目簡介  235

8.2.2 系統功能分析  236

8.2.3 系統總體設計  237

8.2.4 智能合約設計  239

8.2.5 系統實現與部署  246

8.3 本章小結  250

第9章 企業級區塊鏈應用實戰案例詳解  251

9.1 基於Hyperchain的數字票據系統案例分析  251

9.1.1 項目簡介  251

9.1.2 系統功能分析  252

9.1.3 系統總體設計  253

9.1.4 智能合約設計  256

9.1.5 系統實現與部署  261

9.2 基於Hyperchain的出行打車平臺案例分析  263

9.2.1 項目簡介  263

9.2.2 系統功能分析  264

9.2.3 系統總體設計  267

9.2.4 智能合約設計  269

9.2.5 系統實現與部署  284

9.3 本章小結  286


分享到:


相關文章: