本書是重慶電子工程職業(yè)學(xué)院與火幣中國校企合作的成果,融入了火幣作為國際知名區(qū)塊鏈技術(shù)企業(yè)的最新技術(shù)和應(yīng)用。本書主要涵蓋區(qū)塊鏈技術(shù)原理、區(qū)塊鏈數(shù)據(jù)結(jié)構(gòu)與存儲技術(shù)應(yīng)用、區(qū)塊鏈密碼技術(shù)、P2P網(wǎng)絡(luò)在區(qū)塊鏈中的應(yīng)用、區(qū)塊鏈共識機制、區(qū)塊鏈智能合約、區(qū)塊鏈行業(yè)應(yīng)用等內(nèi)容。本書內(nèi)容通俗易懂,有理論有實踐,體現(xiàn)了理論實踐一體化和任務(wù)驅(qū)動思想。本書內(nèi)容安排合理,每章從“學(xué)習(xí)目標(biāo)”“引導(dǎo)案例”開始,通過相關(guān)知識的展開、項目的提出,再到任務(wù)分解,循序漸進,深入淺出,體現(xiàn)問題導(dǎo)向和做中學(xué)的思想,實用性強。
武春嶺,男,(1975.2—),碩士,二級教授、重慶市網(wǎng)絡(luò)與信息安全等級保護專家,工信行指委計算機專指委委員,現(xiàn)任職重慶電子工程職業(yè)學(xué)院人工智能與大數(shù)據(jù)學(xué)院院長。主要研究方向為工業(yè)控制安全技術(shù),在信息安全風(fēng)險評估、網(wǎng)絡(luò)安全等級保護、關(guān)鍵信息系統(tǒng)保護等領(lǐng)域有豐富的實踐經(jīng)驗。主持/主研省部級項目12項,授權(quán)專利9項,發(fā)表論文30余篇,曾獲國家級教學(xué)成果一等獎和二等獎各1次。
第1章 區(qū)塊鏈初探 (1)
1.1 區(qū)塊鏈概念 (1)
1.2 區(qū)塊鏈特性 (2)
1.3 區(qū)塊鏈來源 (3)
1.4 區(qū)塊鏈發(fā)展的里程碑 (4)
1.5 區(qū)塊鏈與“新基建” (5)
1.5.1 物聯(lián)網(wǎng) (5)
1.5.2 大數(shù)據(jù) (5)
1.5.3 人工智能 (6)
1.5.4 云計算 (7)
1.6 區(qū)塊鏈的發(fā)展機遇與挑戰(zhàn) (8)
1.6.1 發(fā)展機遇 (8)
1.6.2 未來挑戰(zhàn) (9)
本章習(xí)題 (11)
第2章 區(qū)塊鏈初級技術(shù)應(yīng)用 (13)
2.1 區(qū)塊鏈內(nèi)涵及運行原理 (13)
2.2 區(qū)塊鏈技術(shù)演化與分類 (15)
2.2.1 區(qū)塊鏈技術(shù)演化 (15)
2.2.2 區(qū)塊鏈分類 (15)
2.3 區(qū)塊鏈通用技術(shù)架構(gòu) (18)
2.4 區(qū)塊鏈核心技術(shù) (19)
2.4.1 密碼學(xué) (19)
2.4.2 P2P網(wǎng)絡(luò) (21)
2.4.3 共識機制 (21)
2.4.4 智能合約 (21)
2.5 區(qū)塊鏈技術(shù)的典型應(yīng)用 (22)
2.5.1 數(shù)字貨幣 (22)
2.5.2 加密數(shù)字貨幣的代表—比特幣 (25)
2.5.3 智能合約鼻祖—以太坊 (25)
2.5.4 迪士尼區(qū)塊鏈平臺—龍鏈 (26)
2.5.5 Linux基金會的開源賬本—Hyperledger (27)
2.5.6 區(qū)塊鏈操作系統(tǒng)—EOS (28)
2.6 項目 以太坊錢包插件MetaMask應(yīng)用實踐 (29)
2.6.1 任務(wù)1 創(chuàng)建MetaMask錢包 (29)
2.6.2 任務(wù)2 申請水龍頭代幣 (35)
2.6.3 任務(wù)3 轉(zhuǎn)賬/收款 (38)
2.6.4 任務(wù)4 導(dǎo)出私鑰 (40)
2.6.5 任務(wù)5 導(dǎo)入賬戶 (41)
2.6.6 任務(wù)6 鏈接硬件錢包 (42)
2.6.7 任務(wù)7 在Etherscan上查看詳情 (43)
本章習(xí)題 (44)
第3章 區(qū)塊鏈數(shù)據(jù)結(jié)構(gòu)與存儲技術(shù)應(yīng)用 (46)
3.1 賬本 (46)
3.2 區(qū)塊結(jié)構(gòu) (47)
3.3 創(chuàng)世區(qū)塊 (47)
3.4 Merkle樹 (48)
3.5 數(shù)據(jù)存儲 (49)
3.5.1 賬本存儲 (49)
3.5.2 Berkeley DB (49)
3.5.3 LevelDB (50)
3.5.4 Couch DB (51)
3.6 項目 Merkle樹的實現(xiàn) (51)
3.6.1 任務(wù)1 SHA256哈希函數(shù)的使用 (51)
3.6.2 任務(wù)2 生成一棵Merkle樹 (52)
本章習(xí)題 (55)
第4章 區(qū)塊鏈密碼學(xué)基礎(chǔ)應(yīng)用 (56)
4.1 密碼學(xué)概念 (56)
4.2 對稱密鑰加密和非對稱密鑰加密 (58)
4.3 數(shù)字簽名 (60)
4.4 哈希函數(shù) (62)
4.5 錢包與密鑰 (64)
4.6 項目 不同加密算法的實現(xiàn) (68)
4.6.1 任務(wù)1 Python環(huán)境部署 (68)
4.6.2 任務(wù)2 加密算法編程的實現(xiàn) (72)
本章習(xí)題 (76)
第5章 P2P網(wǎng)絡(luò)在區(qū)塊鏈中的應(yīng)用 (78)
5.1 P2P網(wǎng)絡(luò)技術(shù)架構(gòu) (78)
5.1.1 P2P網(wǎng)絡(luò)概念 (78)
5.1.2 P2P網(wǎng)絡(luò)技術(shù)架構(gòu) (79)
5.1.3 P2P網(wǎng)絡(luò)研究現(xiàn)狀 (80)
5.2 P2P網(wǎng)絡(luò)核心技術(shù) (80)
5.2.1 分布式哈希表 (80)
5.2.2 Kademlia協(xié)議 (82)
5.2.3 Gossip協(xié)議 (85)
5.3 P2P網(wǎng)絡(luò)應(yīng)用 (86)
5.3.1 文件交換 (86)
5.3.2 對等計算 (86)
5.3.3 協(xié)同工作 (87)
5.3.4 搜索引擎 (87)
5.3.5 流媒體 (87)
5.4 P2P技術(shù)在比特幣中的作用 (87)
5.5 項目 IPFS文件系統(tǒng)的實踐 (90)
5.5.1 任務(wù)1 IPFS環(huán)境部署 (90)
5.5.2 任務(wù)2 IPFS基本操作 (95)
5.5.3 任務(wù)3 IPFS項目的實踐 (98)
本章習(xí)題 (102)
第6章 區(qū)塊鏈共識機制及應(yīng)用 (104)
6.1 共識概述 (104)
6.1.1 共識與一致性 (104)
6.1.2 拜占庭將軍問題 (105)
6.1.3 共識協(xié)議的定義 (106)
6.2 PoW (106)
6.3 PoS (107)
6.4 DPoS (109)
6.5 PBFT (109)
6.6 項目1 PoW共識算法的實踐 (111)
6.6.1 任務(wù)1 Go語言運行環(huán)境部署 (111)
6.6.2 任務(wù)2 PoW共識算法編程的實現(xiàn) (115)
6.7 項目2 挖礦算法與難度調(diào)整 (123)
任務(wù) Python實現(xiàn)區(qū)塊鏈挖礦與難度調(diào)整 (123)
本章習(xí)題 (131)
第7章 區(qū)塊鏈智能合約與編程實現(xiàn) (133)
7.1 智能合約概述 (133)
7.1.1 智能合約的起源 (133)
7.1.2 既不智能,也不是合約 (134)
7.2 用智能合約處理價值 (135)
7.2.1 通證 (135)
7.2.2 一個簡單的智能合約:Faucet (136)
7.2.3 創(chuàng)建鏈上積分的智能合約示例 (137)
7.3 用智能合約處理業(yè)務(wù)邏輯 (138)
7.3.1 購物 (138)
7.3.2 拍賣 (141)
7.3.3 投票 (142)
7.3.4 支票 (146)
7.4 智能合約的編寫、部署與交互 (147)
7.5 項目 智能合約的開發(fā) (148)
7.5.1 任務(wù)1 Solidity語言的基本概念 (148)
7.5.2 任務(wù)2 編譯器remix部署與使用 (148)
7.5.3 任務(wù)3 Solidity語法 (151)
7.5.4 任務(wù)4 Solidity基礎(chǔ)數(shù)據(jù)操作 (158)
7.5.5 任務(wù)5 使用Solidity開發(fā)智能合約 (168)
本章習(xí)題 (173)
第8章 區(qū)塊鏈商業(yè)應(yīng)用 (174)
8.1 區(qū)塊鏈+金融 (174)
8.1.1 支付 (175)
8.1.2 證券 (178)
8.1.3 供應(yīng)鏈金融 (179)
8.2 區(qū)塊鏈+商業(yè) (181)
8.2.1 電子發(fā)票 (181)
8.2.2 商品的防偽溯源 (183)
8.2.3 積分營銷 (185)
本章習(xí)題 (186)
第9章 區(qū)塊鏈民生應(yīng)用 (188)
9.1 區(qū)塊鏈+教育 (188)
9.2 區(qū)塊鏈+醫(yī)療 (191)
9.3 區(qū)塊鏈+公益 (192)
9.4 區(qū)塊鏈+智慧城市 (194)
9.4.1 智慧交通 (194)
9.4.2 智慧能源 (195)
9.4.3 其他 (196)
9.5 區(qū)塊鏈+城際互通 (197)
9.5.1 數(shù)字身份 (197)
9.5.2 征信 (200)
9.6 區(qū)塊鏈+政務(wù) (203)
9.7 區(qū)塊鏈+積分 (206)
本章習(xí)題 (208)
參考文獻 (209)