Hyperledger Fabric分布式賬本技術原理與應用
定 價:198 元
- 作者:馬超群[等]編著
- 出版時間:2022/11/1
- ISBN:9787030696427
- 出 版 社:科學出版社
- 中圖法分類:F713.361.3
- 頁碼:387
- 紙張:
- 版次:1
- 開本:24cm
本書內容包括區(qū)塊鏈基本知識、Hyperledger Fabric分布式賬本技術的基礎架構、網絡部署、賬本模型、共識機制、身份管理、隱私保護等技術原理以及Fabric重要模塊的使用方法,給出了多個應用開發(fā)示例。
更多科學出版社服務,請掃碼獲取。
目錄/CONTENTS
第1章 區(qū)塊鏈技術概述 1
1.1 區(qū)塊鏈發(fā)展的技術背景 1
1.1.1 密碼學 1
1.1.2 分布式共識 3
1.2 區(qū)塊鏈發(fā)展的社會背景 4
1.2.1 數(shù)字經濟 5
1.2.2 數(shù)字社會 6
1.2.3 數(shù)字技術 7
1.3 區(qū)塊鏈基本概念與原理 8
1.3.1 基本概念 8
1.3.2 關鍵技術 12
1.3.3 基本原理 13
1.4 區(qū)塊鏈技術特性與分類 15
1.4.1 技術特性 15
1.4.2 區(qū)塊鏈分類 16
1.5 區(qū)塊鏈技術代際演進 18
1.5.1 密碼朋克 18
1.5.2 加密貨幣 19
1.5.3 智能合約 20
1.5.4 應用拓展 21
1.6 區(qū)塊鏈技術應用現(xiàn)狀與發(fā)展趨勢 21
1.6.1 應用現(xiàn)狀 21
1.6.2 發(fā)展趨勢 24
本章小結 29
第2章 Hyperledger Fabric分布式賬本技術基礎架構 31
2.1 Fabric概述 31
2.1.1 Fabric項目背景 31
2.1.2 Fabric技術特征 32
2.2 基礎架構 33
2.2.1 網絡層 34
2.2.2 核心層 36
2.2.3 接口層 36
2.3 基本概念 36
2.3.1 網絡節(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
本章小結 44
第3章 Hyperledger Fabric分布式賬本技術環(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
本章小結 61
第4章 Hyperledger Fabric分布式賬本網絡 63
4.1 Fabric網絡原理 63
4.1.1 P2P網絡 63
4.1.2 RPC協(xié)議 65
4.1.3 gRPC協(xié)議 68
4.1.4 Gossip協(xié)議 73
4.2 Fabric網絡部署 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網絡運維與管理 108
4.3.1 增刪普通組織 108
4.3.2 網絡監(jiān)控與測試 113
本章小結 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
本章小結 141
第6章 Hyperledger Fabric分布式賬本存儲 142
6.1 Fabric分布式賬本 142
6.1.1 賬本概念 142
6.1.2 核心組件 144
6.1.3 賬本設計模式 146
6.1.4 賬本架構 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ù)結構 159
6.3.2 區(qū)塊交易事務 162
6.3.3 區(qū)塊數(shù)據(jù)訪問 164
6.4 賬本區(qū)塊瀏覽器 168
6.4.1 區(qū)塊數(shù)據(jù)可視化概念 168
6.4.2 Hyperledger Explorer架構 170
6.4.3 Hyperledger Explorer頁面 171
6.4.4 Hyperledger Explorer實驗 173
本章小結 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
本章小結 233
第8章 Hyperledger Fabric分布式賬本身份管理 234
8.1 PKI基本原理 234
8.1.1 PKI架構 234
8.1.2 數(shù)字證書 235
8.1.3 數(shù)字簽名 237
8.1.4 消息認證 239
8.1.5 PKI示例 239
8.2 Fabric CA架構與部署 244
8.2.1 Fabric CA架構 245
8.2.2 Fabric CA部署 247
8.3 Fabric CA操作 249
8.3.1 Fabric CA操作命令 249
8.3.2 Fabric CA操作示例 252
本章小結 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
本章小結 284
第10章 Hyperledger Fabric分布式賬本鏈碼 285
10.1 智能合約概述 285
10.1.1 智能合約定義 285
10.1.2 智能合約應用 286
10.2 Fabric鏈碼開發(fā)規(guī)范 287
10.2.1 鏈碼類型 287
10.2.2 鏈碼編寫 289
10.2.3 鏈碼部署 291
10.2.4 鏈碼調用 292
10.3 Fabric鏈碼編程示例 293
10.3.1 狀態(tài)轉移型鏈碼 293
10.3.2 食品溯源型鏈碼 296
本章小結 304
第11章 Hyperledger Fabric Go SDK Web服務開發(fā) 305
11.1 Web服務概述 305
11.1.1 Web框架 305
11.1.2 Gin框架 306
11.2 Go Web服務控制層 307
11.2.1 連接配置文件 307
11.2.2 控制層開發(fā) 311
11.3 Go Web服務路由層 318
11.3.1 路由層開發(fā) 318
11.3.2 路由綁定 320
本章小結 321
第12章 基于Node SDK的數(shù)字版權保護系統(tǒng)實現(xiàn) 322
12.1 版權保護場景分析 322
12.1.1 需求分析 322
12.1.2 架構設計 324
12.1.3 數(shù)據(jù)模型設計 324
12.1.4 環(huán)境準備 325
12.2 Node SDK應用開發(fā) 328
12.2.1 模塊接口 328
12.2.2 鏈碼開發(fā) 331
12.2.3 網絡連接配置 336
12.2.4 客戶端身份注冊與登記 337
12.2.5 業(yè)務層實現(xiàn) 341
12.3 Express后端服務實現(xiàn) 346
12.3.1 路由文件 346
12.3.2 應用主文件 353
12.4 應用部署與測試 353
12.4.1 啟動網絡 353
12.4.2 啟動后端服務 354
12.4.3 應用測試 354
本章小結 356
第13章 基于Go SDK的物聯(lián)網數(shù)據(jù)采集系統(tǒng) 358
13.1 物聯(lián)網數(shù)據(jù)采集場景分析 358
13.1.1 需求分析 358
13.1.2 架構設計 358
13.1.3 數(shù)據(jù)模型設計 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 鏈碼與應用開發(fā) 365
13.3.1 鏈碼開發(fā) 365
13.3.2 網絡連接配置 369
13.3.3 應用開發(fā) 374
13.4 應用部署與測試 377
13.4.1 系統(tǒng)搭建 378
13.4.2 應用測試 378
本章小結 383
參考文獻 384