Hyperledger Fabric分布式賬本技術(shù)原理與應(yīng)用
定 價:198 元
- 作者:馬超群[等]編著
- 出版時間:2022/11/1
- ISBN:9787030696427
- 出 版 社:科學(xué)出版社
- 中圖法分類:F713.361.3
- 頁碼:387
- 紙張:
- 版次:1
- 開本:24cm
本書內(nèi)容包括區(qū)塊鏈基本知識、Hyperledger Fabric分布式賬本技術(shù)的基礎(chǔ)架構(gòu)、網(wǎng)絡(luò)部署、賬本模型、共識機制、身份管理、隱私保護等技術(shù)原理以及Fabric重要模塊的使用方法,給出了多個應(yīng)用開發(fā)示例。
更多科學(xué)出版社服務(wù),請掃碼獲取。
目錄/CONTENTS
第1章 區(qū)塊鏈技術(shù)概述 1
1.1 區(qū)塊鏈發(fā)展的技術(shù)背景 1
1.1.1 密碼學(xué) 1
1.1.2 分布式共識 3
1.2 區(qū)塊鏈發(fā)展的社會背景 4
1.2.1 數(shù)字經(jīng)濟 5
1.2.2 數(shù)字社會 6
1.2.3 數(shù)字技術(shù) 7
1.3 區(qū)塊鏈基本概念與原理 8
1.3.1 基本概念 8
1.3.2 關(guān)鍵技術(shù) 12
1.3.3 基本原理 13
1.4 區(qū)塊鏈技術(shù)特性與分類 15
1.4.1 技術(shù)特性 15
1.4.2 區(qū)塊鏈分類 16
1.5 區(qū)塊鏈技術(shù)代際演進 18
1.5.1 密碼朋克 18
1.5.2 加密貨幣 19
1.5.3 智能合約 20
1.5.4 應(yīng)用拓展 21
1.6 區(qū)塊鏈技術(shù)應(yīng)用現(xiàn)狀與發(fā)展趨勢 21
1.6.1 應(yīng)用現(xiàn)狀 21
1.6.2 發(fā)展趨勢 24
本章小結(jié) 29
第2章 Hyperledger Fabric分布式賬本技術(shù)基礎(chǔ)架構(gòu) 31
2.1 Fabric概述 31
2.1.1 Fabric項目背景 31
2.1.2 Fabric技術(shù)特征 32
2.2 基礎(chǔ)架構(gòu) 33
2.2.1 網(wǎng)絡(luò)層 34
2.2.2 核心層 36
2.2.3 接口層 36
2.3 基本概念 36
2.3.1 網(wǎng)絡(luò)節(jié)點 36
2.3.2 分布式賬本 39
2.3.3 智能合約和鏈碼 39
2.3.4 賬本通道 39
2.3.5 私有數(shù)據(jù)集 40
2.4 交易流程 41
2.4.1 交易流程簡介 41
2.4.2 案例說明 42
本章小結(jié) 44
第3章 Hyperledger Fabric分布式賬本技術(shù)環(huán)境 45
3.1 Ubuntu操作系統(tǒng) 45
3.1.1 Linux概述 45
3.1.2 Ubuntu Server操作 46
3.2 Docker 47
3.2.1 Docker原理 48
3.2.2 Docker操作 49
3.2.3 Docker-Compose 51
3.3 Go語言 57
3.3.1 Go語言環(huán)境配置 57
3.3.2 Go語言語法 59
3.3.3 Go語言編譯與運行 60
本章小結(jié) 61
第4章 Hyperledger Fabric分布式賬本網(wǎng)絡(luò) 63
4.1 Fabric網(wǎng)絡(luò)原理 63
4.1.1 P2P網(wǎng)絡(luò) 63
4.1.2 RPC協(xié)議 65
4.1.3 gRPC協(xié)議 68
4.1.4 Gossip協(xié)議 73
4.2 Fabric網(wǎng)絡(luò)部署 75
4.2.1 環(huán)境配置 75
4.2.2 源碼編譯 79
4.2.3 身份證書生成 81
4.2.4 容器啟動模式 84
4.2.5 本地啟動模式 98
4.3 Fabric網(wǎng)絡(luò)運維與管理 108
4.3.1 增刪普通組織 108
4.3.2 網(wǎng)絡(luò)監(jiān)控與測試 113
本章小結(jié) 116
第5章 Hyperledger Fabric分布式賬本Peer節(jié)點 118
5.1 Peer概述 118
5.1.1 Peer節(jié)點類型 118
5.1.2 Peer交互流程 119
5.2 Peer編譯和部署 122
5.2.1 Peer編譯 122
5.2.2 Peer核心配置 123
5.2.3 Peer啟動 132
5.3 Peer命令 134
5.3.1 Peer命令類型 134
5.3.2 通道操作命令 135
5.3.3 鏈碼操作命令 137
5.3.4 節(jié)點操作命令 140
本章小結(jié) 141
第6章 Hyperledger Fabric分布式賬本存儲 142
6.1 Fabric分布式賬本 142
6.1.1 賬本概念 142
6.1.2 核心組件 144
6.1.3 賬本設(shè)計模式 146
6.1.4 賬本架構(gòu) 148
6.1.5 文件存儲 151
6.2 賬本數(shù)據(jù)庫 153
6.2.1 LevelDB 154
6.2.2 CouchDB 155
6.2.3 數(shù)據(jù)庫索引 157
6.3 賬本區(qū)塊 159
6.3.1 區(qū)塊數(shù)據(jù)結(jié)構(gòu) 159
6.3.2 區(qū)塊交易事務(wù) 162
6.3.3 區(qū)塊數(shù)據(jù)訪問 164
6.4 賬本區(qū)塊瀏覽器 168
6.4.1 區(qū)塊數(shù)據(jù)可視化概念 168
6.4.2 Hyperledger Explorer架構(gòu) 170
6.4.3 Hyperledger Explorer頁面 171
6.4.4 Hyperledger Explorer實驗 173
本章小結(jié) 178
第7章 Hyperledger Fabric分布式賬本共識 179
7.1 分布式共識概述 179
7.1.1 共識問題 179
7.1.2 共識演進 183
7.2 分布式共識理論 188
7.2.1 FLP理論 188
7.2.2 CAP理論 188
7.2.3 BASE理論 191
7.3 分布式共識原理 192
7.3.1 Paxos 192
7.3.2 PBFT 197
7.3.3 PoW 201
7.3.4 PoS 203
7.4 Fabric共識機制 208
7.4.1 共識框架 208
7.4.2 Solo共識 216
7.4.3 Kafka共識 216
7.4.4 Raft共識 219
7.5 Fabric共識部署和測試 223
7.5.1 Solo部署和測試 223
7.5.2 Kafka部署和測試 225
7.5.3 Raft部署和測試 231
本章小結(jié) 233
第8章 Hyperledger Fabric分布式賬本身份管理 234
8.1 PKI基本原理 234
8.1.1 PKI架構(gòu) 234
8.1.2 數(shù)字證書 235
8.1.3 數(shù)字簽名 237
8.1.4 消息認證 239
8.1.5 PKI示例 239
8.2 Fabric CA架構(gòu)與部署 244
8.2.1 Fabric CA架構(gòu) 245
8.2.2 Fabric CA部署 247
8.3 Fabric CA操作 249
8.3.1 Fabric CA操作命令 249
8.3.2 Fabric CA操作示例 252
本章小結(jié) 260
第9章 Hyperledger Fabric分布式賬本隱私保護機制 261
9.1 區(qū)塊鏈隱私保護問題、方法與機制 261
9.1.1 區(qū)塊鏈隱私保護問題 261
9.1.2 區(qū)塊鏈隱私保護方法與機制 262
9.2 Fabric隱私保護機制 264
9.2.1 Fabric隱私保護體系 264
9.2.2 訪問控制 265
9.2.3 通道隔離 267
9.2.4 私有數(shù)據(jù)集 271
9.3 Fabric隱私保護機制示例 276
9.3.1 通道隔離示例 276
9.3.2 私有數(shù)據(jù)集示例 279
本章小結(jié) 284
第10章 Hyperledger Fabric分布式賬本鏈碼 285
10.1 智能合約概述 285
10.1.1 智能合約定義 285
10.1.2 智能合約應(yīng)用 286
10.2 Fabric鏈碼開發(fā)規(guī)范 287
10.2.1 鏈碼類型 287
10.2.2 鏈碼編寫 289
10.2.3 鏈碼部署 291
10.2.4 鏈碼調(diào)用 292
10.3 Fabric鏈碼編程示例 293
10.3.1 狀態(tài)轉(zhuǎn)移型鏈碼 293
10.3.2 食品溯源型鏈碼 296
本章小結(jié) 304
第11章 Hyperledger Fabric Go SDK Web服務(wù)開發(fā) 305
11.1 Web服務(wù)概述 305
11.1.1 Web框架 305
11.1.2 Gin框架 306
11.2 Go Web服務(wù)控制層 307
11.2.1 連接配置文件 307
11.2.2 控制層開發(fā) 311
11.3 Go Web服務(wù)路由層 318
11.3.1 路由層開發(fā) 318
11.3.2 路由綁定 320
本章小結(jié) 321
第12章 基于Node SDK的數(shù)字版權(quán)保護系統(tǒng)實現(xiàn) 322
12.1 版權(quán)保護場景分析 322
12.1.1 需求分析 322
12.1.2 架構(gòu)設(shè)計 324
12.1.3 數(shù)據(jù)模型設(shè)計 324
12.1.4 環(huán)境準備 325
12.2 Node SDK應(yīng)用開發(fā) 328
12.2.1 模塊接口 328
12.2.2 鏈碼開發(fā) 331
12.2.3 網(wǎng)絡(luò)連接配置 336
12.2.4 客戶端身份注冊與登記 337
12.2.5 業(yè)務(wù)層實現(xiàn) 341
12.3 Express后端服務(wù)實現(xiàn) 346
12.3.1 路由文件 346
12.3.2 應(yīng)用主文件 353
12.4 應(yīng)用部署與測試 353
12.4.1 啟動網(wǎng)絡(luò) 353
12.4.2 啟動后端服務(wù) 354
12.4.3 應(yīng)用測試 354
本章小結(jié) 356
第13章 基于Go SDK的物聯(lián)網(wǎng)數(shù)據(jù)采集系統(tǒng) 358
13.1 物聯(lián)網(wǎng)數(shù)據(jù)采集場景分析 358
13.1.1 需求分析 358
13.1.2 架構(gòu)設(shè)計 358
13.1.3 數(shù)據(jù)模型設(shè)計 360
13.1.4 環(huán)境準備 360
13.2 傳感器數(shù)據(jù)采集 362
13.2.1 傳感器簡介 362
13.2.2 Gobot框架 363
13.2.3 數(shù)據(jù)采集實現(xiàn) 363
13.3 鏈碼與應(yīng)用開發(fā) 365
13.3.1 鏈碼開發(fā) 365
13.3.2 網(wǎng)絡(luò)連接配置 369
13.3.3 應(yīng)用開發(fā) 374
13.4 應(yīng)用部署與測試 377
13.4.1 系統(tǒng)搭建 378
13.4.2 應(yīng)用測試 378
本章小結(jié) 383
參考文獻 384