2016年,筆者漫步于校圖書館,幾乎檢索不到一本區(qū)塊鏈書籍; 2022年,筆者徜徉于電商網(wǎng)站,見到了琳瑯滿目的區(qū)塊鏈著作。幾年間,筆者見證了區(qū)塊鏈從風口浪尖到本土特色化落地,見證了區(qū)塊鏈從金融科技到可編程社會發(fā)展,也見證了區(qū)塊鏈為我國新興數(shù)智化生態(tài)產(chǎn)業(yè)賦能提效。時至今日,筆者整裝再出發(fā),以區(qū)塊鏈技術發(fā)展為主線,結合自身研究應用情況,將區(qū)塊鏈1.0~3.0時代主流技術(比特幣、以太坊、EOS)總結編寫成書,旨在幫助區(qū)塊鏈技術萌新快速掌握區(qū)塊鏈開發(fā)技術和底層實現(xiàn)等內(nèi)容。
本書主要內(nèi)容
本書可被視為一本理論與實踐相結合的書籍,非常適合具備一定計算機科學與技術知識及面向?qū)ο缶幊探?jīng)驗的讀者學習。 讀者可以在短時間內(nèi)學習本書中介紹的區(qū)塊鏈基礎概念、技術原理和開發(fā)實現(xiàn)等內(nèi)容。
全書共9章,既有基礎概念、技術原理,又有開發(fā)實現(xiàn)。
第1章為區(qū)塊鏈概念,涵蓋區(qū)塊鏈定義、特點、發(fā)展、分類等基礎概念,基于對區(qū)塊鏈技術和發(fā)展的研判,總結提出區(qū)塊鏈生態(tài)架構,是全書的基礎框架。
第2章為區(qū)塊鏈技術,涵蓋區(qū)塊鏈數(shù)據(jù)層、網(wǎng)絡層、共識層、合約層、拓展層等技術原理,是對第1章區(qū)塊鏈生態(tài)架構中技術協(xié)議層的全面闡述。
第3~9章為開發(fā)實現(xiàn),涵蓋區(qū)塊鏈1.0~3.0時代主流區(qū)塊鏈系統(tǒng)(技術協(xié)議),各系統(tǒng)涉及背景知識、開發(fā)技術和底層實現(xiàn)等內(nèi)容,是對第2章技術協(xié)議層不同實現(xiàn)方式的具體描述。其中,第3、4章重點講述比特幣: 第3章區(qū)塊鏈第一代系統(tǒng)比特幣,包括比特幣基本概念、業(yè)務流程、技術協(xié)議各層技術、改進提案及系統(tǒng)搭建等內(nèi)容; 第4章比特幣源碼解析,包括比特幣源碼結構和技術協(xié)議各層源碼解析。第5~7章重點講述以太坊: 第5章區(qū)塊鏈開發(fā)平臺以太坊,包括以太坊基本概念、業(yè)務流程、技術協(xié)議各層技術、改進提案、系統(tǒng)搭建及合約開發(fā)等內(nèi)容; 第6章以太坊源碼解析(C 版本),是基于C 語言的以太坊源碼結構和技術協(xié)議各層源碼解析; 第7章以太坊源碼解析(Go版本),是基于Go語言的以太坊源碼結構和技術協(xié)議各層源碼解析。第8、9章重點講述EOS: 第8章區(qū)塊鏈企業(yè)級操作系統(tǒng)EOS,包括EOS基本概念、業(yè)務流程、技術協(xié)議各層技術、版本演進、系統(tǒng)搭建及合約開發(fā)等內(nèi)容; 第9章EOS源碼解析,包括EOS源碼結構和技術協(xié)議各層源碼解析。
本書特色
本書具備三全、三新兩大特點,具體如下。
(1) 內(nèi)容覆蓋全。本書涵蓋區(qū)塊鏈1.0~3.0時代主流區(qū)塊鏈系統(tǒng),內(nèi)容豐富多彩。
(2) 技術知識全。本書分別講述各區(qū)塊鏈技術的基本概念、業(yè)務流程、技術協(xié)議、系統(tǒng)部署、合約開發(fā)、合約調(diào)用、系統(tǒng)源碼等內(nèi)容,知識體系全面。
(3) 前后聯(lián)系全。本書基于抽象的數(shù)據(jù)層、網(wǎng)絡層、共識層、合約層等技術協(xié)議展開,講述不同區(qū)塊鏈系統(tǒng)各層具體技術與源碼,前后內(nèi)容關聯(lián)性強。講述內(nèi)容不僅有理論,也有開發(fā)實戰(zhàn),理論與實踐聯(lián)系密切。
(4) 技術版本新。本書講解的各區(qū)塊鏈系統(tǒng)版本較新,避免知識滯后。
(5) 部署方式新。本書在講解物理機部署方式的同時,重點講解容器化部署方式,緊跟云原生浪潮。
(6) 編寫方式新。本書以區(qū)塊鏈基礎概念、技術原理為基礎,過渡到主流區(qū)塊鏈系統(tǒng)的開發(fā)實現(xiàn),內(nèi)容循序漸進。在各系統(tǒng)開發(fā)實現(xiàn)內(nèi)容中,分別介紹了背景知識、開發(fā)技術和底層實現(xiàn),內(nèi)容由淺入深。
配套資源
為便于教與學,本書配有源代碼。獲取源代碼、全書網(wǎng)址的方式: 先刮開并用手機版微信App掃描本書封底的文泉云盤防盜碼,獲得授權后再掃描下方二維碼,即可獲取。
源代碼
全書網(wǎng)址
讀者對象
本書主要面向廣大從事區(qū)塊鏈應用與底層開發(fā)的專業(yè)人員、從事高等教育的專任教師、高等院校的在讀學生及相關領域的廣大科研人員。
閱讀小貼士
(1) 技術思維。
筆者想借此機會告訴廣大讀者,區(qū)塊鏈技術協(xié)議大多不是獨創(chuàng)的,區(qū)塊鏈也不是平地而起的,而是結合具體應用場景和業(yè)務痛點,站在前人的肩膀上,組裝或改造這些技術協(xié)議,從而構建起來的。在實際中,希望讀者也能夠借鑒這種模式,在創(chuàng)造或使用一些技術時,首先要考慮的不是技術本身的先進性,而是創(chuàng)造或使用它們的必要性,例如,政治性和業(yè)務性。沒有離開政治的業(yè)務,沒有離開業(yè)務的技術,也沒有離開政治的技術,讀者需要在緊跟政治、業(yè)務的前提下,以賦能應用場景和解決業(yè)務痛點為出發(fā)點,做好這些技術。
(2) 實戰(zhàn)思維。
不同區(qū)塊鏈技術可能衍生不同的網(wǎng)絡、分支和版本。本書以廣泛的學習研究為目的,為讀者介紹了不同區(qū)塊鏈技術協(xié)議及其源碼實現(xiàn)。建議讀者根據(jù)實際情況選擇合適的技術,參考GitHub等資源,進行深入的研究和應用。
(3) 閱讀重點。
本書在介紹同一區(qū)塊鏈系統(tǒng)時,涵蓋了背景知識、開發(fā)技術和底層實現(xiàn)等內(nèi)容。建議讀者通讀這些內(nèi)容。如果讀者只是以應用開發(fā)為目的,不甚關心系統(tǒng)底層實現(xiàn),可略過第4、6、7、9章; 如果讀者希望學習底層實現(xiàn),請勿略過第4、6、7、9章。
最后,特別感謝指導、幫助、支持我的領導和同事,特別感謝關心、理解、包容我的家人和朋友。在本書的編寫過程中,參考了諸多相關資料,在此衷心感謝相關作者。
限于個人水平和時間倉促,書中難免存在疏漏之處,歡迎廣大讀者批評指正。
筆者2023年1月