世界經(jīng)濟(jì)論壇(即達(dá)沃斯論壇)創(chuàng)始人Klaus Schwab說(shuō):“自蒸汽機(jī)、電和計(jì)算機(jī)發(fā)明以來(lái),人們又迎來(lái)了第四次工業(yè)革命——數(shù)字革命,而區(qū)塊鏈技術(shù)就是第四次工業(yè)革命的成果!眳^(qū)塊鏈作為下一代的可信互聯(lián)網(wǎng),必將顛覆所有在其之上運(yùn)行的業(yè)務(wù),讓整個(gè)基于互聯(lián)網(wǎng)的企業(yè)、生態(tài)、產(chǎn)業(yè)鏈徹底做一次變革創(chuàng)新。包括IBM、微軟、亞馬遜、臉書、騰訊和阿里巴巴在內(nèi)的信息產(chǎn)業(yè)巨頭都已經(jīng)投入了大量研發(fā)力量成立區(qū)塊鏈項(xiàng)目團(tuán)隊(duì)。例如,螞蟻金服的“相互寶”就是一個(gè)典型的區(qū)塊鏈+保險(xiǎn)應(yīng)用;亞馬遜云平臺(tái)AWS推出區(qū)塊鏈模版,幫助客戶一鍵上鏈;臉書公司計(jì)劃推出基于社交網(wǎng)絡(luò)的數(shù)字貨幣。根據(jù)現(xiàn)在的發(fā)展趨勢(shì),區(qū)塊鏈將在各行各業(yè)得到廣泛應(yīng)用。
超級(jí)賬本(Hyperledger)是Linux基金會(huì)旗下的區(qū)塊鏈開發(fā)平臺(tái)項(xiàng)目,致力于發(fā)展跨行業(yè)的商用區(qū)塊鏈平臺(tái)技術(shù)。超級(jí)賬本項(xiàng)目自創(chuàng)立伊始便吸引了眾多行業(yè)的領(lǐng)頭羊,包括金融、銀行、互聯(lián)網(wǎng)、運(yùn)輸、制造等行業(yè)。目前,超級(jí)賬本項(xiàng)目在全球有超過(guò)100個(gè)成員,包括IBM、Cisco、Intel、J.P.Morgan、荷蘭銀行、SWIFT等;趨^(qū)塊鏈技術(shù)、智能合約及其他相關(guān)技術(shù),超級(jí)賬本項(xiàng)目在建立新一代分布式賬本交易應(yīng)用平臺(tái),簡(jiǎn)化與商業(yè)流程相關(guān)事務(wù)的同時(shí),還將發(fā)展商業(yè)信任、運(yùn)作透明、審查方便等能力。本書在剖析區(qū)塊鏈核心技術(shù)時(shí),會(huì)對(duì)實(shí)際區(qū)塊鏈項(xiàng)目的具體實(shí)現(xiàn)進(jìn)行講解,力圖探索其核心思想,展現(xiàn)其設(shè)計(jì)精華,剖析其應(yīng)用特性。
本書在寫作中秉承了由淺入深、由理論到實(shí)踐的思想。全書共分為8章,前3章是區(qū)塊鏈理論講解,后5章通過(guò)項(xiàng)目實(shí)例講解介紹區(qū)塊鏈開發(fā)技術(shù)尤其是智能合約編寫技巧。具體安排如下:
· 第1章 本章是區(qū)塊鏈技術(shù)與生態(tài)的概覽,涉及區(qū)塊鏈的基本概念、演進(jìn)、層次模型和共識(shí)算法等,詳細(xì)解釋了比特幣的工作機(jī)制,介紹了以太坊、EOS、超級(jí)賬本等主流技術(shù)平臺(tái);并結(jié)合現(xiàn)代背景和區(qū)塊鏈的發(fā)展現(xiàn)狀,闡述了區(qū)塊鏈的應(yīng)用場(chǎng)景,讓不了解區(qū)塊鏈的讀者對(duì)區(qū)塊鏈有一個(gè)整體性的了解。
· 第2章 本章圍繞區(qū)塊鏈中的信息安全技術(shù)展開,從介紹信息安全的五大特征開始,依次介紹了對(duì)稱密碼和公鑰密碼技術(shù)。其中,在公鑰密碼技術(shù)中詳細(xì)講解了包括大整數(shù)因子分解問(wèn)題、離散對(duì)數(shù)求解問(wèn)題和密鑰交換協(xié)議等重要知識(shí),著重闡述了哈希算法和Merkle樹技術(shù)。
· 第3章 本章是企業(yè)級(jí)區(qū)塊鏈平臺(tái)——分布式超級(jí)賬本(Hyperledger Fabric)的概覽,涉及分布式超級(jí)賬本的基本概念、演進(jìn),著重分析了超級(jí)賬本平臺(tái)的應(yīng)用場(chǎng)景,有助于讀者對(duì)區(qū)塊鏈和Hyperledger Fabric(以下簡(jiǎn)稱Fabric)的設(shè)計(jì)理念有一個(gè)整體性的了解。
· 第4章 本章首先介紹Fabric的開發(fā)流程,從零開始完成環(huán)境搭建、樣例網(wǎng)絡(luò)運(yùn)行、樣例鏈碼分析和編寫等過(guò)程,并最終通過(guò)命令行成功地調(diào)用了鏈碼(在Fabric里,智能合約被稱為鏈碼),完成了Fabric區(qū)塊鏈上的數(shù)據(jù)存儲(chǔ)。鏈碼的調(diào)用方式有命令行調(diào)用和SDK調(diào)用兩種,本章使用命令行方式對(duì)鏈碼進(jìn)行安裝、實(shí)例化和調(diào)用。這種調(diào)用方式雖較為復(fù)雜,卻是Fabric區(qū)塊鏈開發(fā)的基礎(chǔ)。讀者需要切實(shí)掌握命令中每個(gè)選項(xiàng)的含義,避免盲目拷貝代碼,為后續(xù)自己搭建區(qū)塊鏈網(wǎng)絡(luò)做好準(zhǔn)備。
· 第5章 本章帶領(lǐng)讀者從零開始學(xué)習(xí)超級(jí)賬本開發(fā)工具——Hyperledger Composer。我們先給出開發(fā)業(yè)務(wù)網(wǎng)絡(luò)的整體思路,然后依次講解搭建環(huán)境、CTO建模語(yǔ)言以及業(yè)務(wù)邏輯代碼的編寫、部署和測(cè)試,并且完成一個(gè)簡(jiǎn)單的卡片交易業(yè)務(wù)網(wǎng)絡(luò)。通過(guò)本章的學(xué)習(xí),讀者對(duì)Hyperledger Composer的開發(fā)流程應(yīng)該能夠有個(gè)基本了解,并且能感受到通過(guò)Composer開發(fā)區(qū)塊鏈應(yīng)用的益處。
· 第6章 本章介紹使用Hyperledger Composer開發(fā)兩個(gè)簡(jiǎn)單的區(qū)塊鏈業(yè)務(wù)網(wǎng)絡(luò),并學(xué)習(xí)Hyperledger Composer的可選屬性、概念、事件等用法,詳細(xì)講解在編碼后如何進(jìn)行情景測(cè)試,為讀者提供擴(kuò)展網(wǎng)絡(luò)的思路。
· 第7章 通過(guò)項(xiàng)目實(shí)例講解介紹了Hyperledger Composer的一個(gè)高級(jí)功能——自定義查詢,并且通過(guò)實(shí)戰(zhàn)了解三方交易的類型和拍賣的業(yè)務(wù)網(wǎng)絡(luò),幫助讀者熟悉框架的同時(shí)開拓了開發(fā)思路。
· 第8章 本章首先帶領(lǐng)讀者了解區(qū)塊鏈項(xiàng)目的幾種開發(fā)方式,接下來(lái)介紹目前主流的幾種編程語(yǔ)言的特點(diǎn)、應(yīng)用場(chǎng)景及接入Composer Rest Server的方法。
相信讀者在閱讀完本書后,在深入理解區(qū)塊鏈核心概念和原理的同時(shí),對(duì)于區(qū)塊鏈和分布式賬本領(lǐng)域最新的技術(shù)和典型設(shè)計(jì)實(shí)現(xiàn)也能了然于心,可以更加高效地開發(fā)基于區(qū)塊鏈平臺(tái)的分布式應(yīng)用。
本書的案例資料和實(shí)戰(zhàn)項(xiàng)目都出自作者及其團(tuán)隊(duì)所在的東華大學(xué)BAAS區(qū)塊鏈實(shí)驗(yàn)室。東華大學(xué)BAAS區(qū)塊鏈實(shí)驗(yàn)室由國(guó)家“211工程重點(diǎn)高!睎|華大學(xué)與嘗試實(shí)業(yè)(上海)有限公司聯(lián)合成立,總部設(shè)在上海,目前已為三十多家企業(yè)提供了區(qū)塊鏈項(xiàng)目開發(fā)、咨詢和培訓(xùn)服務(wù)。團(tuán)隊(duì)擁有核心技術(shù)專利11項(xiàng),區(qū)塊鏈相關(guān)軟件著作權(quán)24項(xiàng),與國(guó)內(nèi)近百所高校、宏觀資本、漢景資本、大型審計(jì)所、多省商會(huì)等百余家行業(yè)翹楚單位達(dá)成戰(zhàn)略合作。團(tuán)隊(duì)致力于打造自主可控的企業(yè)級(jí)區(qū)塊鏈技術(shù)應(yīng)用咨詢與人才培訓(xùn)平臺(tái),推動(dòng)區(qū)塊鏈技術(shù)的學(xué)術(shù)研究與技術(shù)研發(fā),共同推進(jìn)區(qū)塊鏈技術(shù)在中國(guó)互聯(lián)網(wǎng)、科技金融等行業(yè)中的技術(shù)變革和應(yīng)用落地。隨著實(shí)驗(yàn)室研究工作的深入推進(jìn)和不斷擴(kuò)大,后續(xù)還將推出新的著作。
在本書長(zhǎng)達(dá)一年時(shí)間的編寫過(guò)程中,得到了來(lái)自家人、同事以及西安電子科技大學(xué)出版社李惠萍編輯的支持和鼓勵(lì),在此表示感謝!感謝東華大學(xué)BAAS區(qū)塊鏈實(shí)驗(yàn)室成員李豫沛、周奕軍、鄧翔天、劉憶童的合作編寫。
最后希望本書的出版,能為廣大區(qū)塊鏈技術(shù)愛(ài)好者和開發(fā)者提供幫助。
作 者
2019年6月于上海