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