區(qū)塊鏈技術(shù)面臨隱私泄露風(fēng)險,傳統(tǒng)的隱私保護技術(shù)又不適用,因此深入剖析區(qū)塊鏈隱私泄露的原因、研究適用的隱私保護方法具有重要意義。本書內(nèi)容系統(tǒng)且新穎,從區(qū)塊鏈底層技術(shù)原理,到信息服務(wù)模式對區(qū)塊鏈安全提出的新需求和新挑戰(zhàn),再到隱私保護的各種基礎(chǔ)理論、關(guān)鍵技術(shù)及實用性,全面闡述了區(qū)塊鏈隱私保護的內(nèi)涵。 本書共10章,主要內(nèi)容包括:區(qū)塊鏈基礎(chǔ),區(qū)塊鏈技術(shù)原理,區(qū)塊鏈共識機制,區(qū)塊鏈安全和隱私,隱私保護理論基礎(chǔ),智能合約安全,區(qū)塊鏈身份認(rèn)證,基于區(qū)塊鏈的隱私計算,可修訂區(qū)塊鏈,區(qū)塊鏈隱私技術(shù)應(yīng)用。 本書可作為高等院校計算機、區(qū)塊鏈和其他信息學(xué)科相關(guān)專業(yè)的教材,也可供對區(qū)塊鏈、數(shù)據(jù)共享和數(shù)字經(jīng)濟感興趣的研究人員和工程技術(shù)人員閱讀參考。
楊旸,女,博士后,副教授,博士生導(dǎo)師,CCF區(qū)塊鏈專業(yè)委員會委員,IEEE會員,CCF會員。以第一作者或通信作者在IEEE Transactions on Information Forensics & Security,IEEE Transactions on Dependable and Secure Computing,IEEE Transactions on Services Computing,IEEE Transactions on Industrial Informatics,IEEE Transactions on Cloud Computing等國內(nèi)外期刊會議上發(fā)表SCI/EI論文60余篇。以第一發(fā)明人身份申請中國發(fā)明專利16項,已授權(quán)軟件著作權(quán)11項。
目 錄
第1章 區(qū)塊鏈基礎(chǔ) 1
1.1 區(qū)塊鏈的基本概念 1
1.1.1 區(qū)塊鏈的定義和特性 1
1.1.2 區(qū)塊鏈核心部件 3
1.1.3 區(qū)塊鏈的分類 12
1.1.4 區(qū)塊鏈的工作原理 12
1.2 公有鏈 13
1.2.1 區(qū)塊鏈1.0架構(gòu) 14
1.2.2 比特幣 15
1.2.3 區(qū)塊鏈2.0架構(gòu) 22
1.2.4 以太坊與智能合約 23
1.3 聯(lián)盟鏈 29
1.3.1 區(qū)塊鏈3.0架構(gòu) 30
1.3.2 超級賬本 32
1.4 私有鏈 38
本章小結(jié) 39
習(xí)題1 39
參考文獻 40
第2章 區(qū)塊鏈技術(shù)原理 41
2.1 區(qū)塊鏈技術(shù)基礎(chǔ) 41
2.1.1 P2P網(wǎng)絡(luò) 41
2.1.2 交易和地址 42
2.2 賬本模型 49
2.2.1 UTXO模型 50
2.2.2 賬戶模型 52
2.3 區(qū)塊鏈擴展 54
2.3.1 區(qū)塊鏈擴容 54
2.3.2 跨鏈技術(shù) 57
2.3.3 通道 62
2.3.4 有向無環(huán)圖 66
本章小結(jié) 68
習(xí)題2 68
參考文獻 68
第3章 區(qū)塊鏈共識機制 70
3.1 拜占庭容錯技術(shù) 70
3.1.1 拜占庭將軍問題 70
3.1.2 拜占庭容錯系統(tǒng) 73
3.2 FLP不可能原理 73
3.3 CAP原理 73
3.4 Paxos算法和Raft算法 74
3.4.1 Paxos算法[6] 74
3.4.2 Raft算法 79
3.5 共識機制 81
3.5.1 分布式系統(tǒng)的一致性問題 81
3.5.2 工作量證明 82
3.5.3 權(quán)益證明 84
3.5.4 委托權(quán)益證明 86
3.5.5 其他共識算法 86
3.6 共識安全威脅 93
3.6.1 雙花攻擊 93
3.6.2 自私挖礦攻擊 95
3.6.3 幣齡累計攻擊 95
3.6.4 長程攻擊 96
本章小結(jié) 96
習(xí)題3 96
參考文獻 97
第4章 區(qū)塊鏈安全和隱私 98
4.1 區(qū)塊鏈安全需求 98
4.2 區(qū)塊鏈安全威脅 100
4.2.1 匿名性和隱私性 100
4.2.2 密鑰安全威脅 102
4.2.3 數(shù)據(jù)安全威脅 103
4.2.4 共識安全威脅 103
4.2.5 智能合約安全威脅 106
4.2.6 錢包的安全性威脅 108
4.2.7 外部和內(nèi)部攻擊威脅 109
4.3 區(qū)塊鏈系統(tǒng)的安全風(fēng)險 110
4.3.1 數(shù)據(jù)一致性風(fēng)險 110
4.3.2 算法、協(xié)議和系統(tǒng)的安全漏洞 111
4.3.3 區(qū)塊鏈資產(chǎn)的盜用和遺失 115
4.4 區(qū)塊鏈系統(tǒng)的安全挑戰(zhàn) 116
4.4.1 數(shù)據(jù)安全和用戶隱私保護 116
4.4.2 智能合約的安全執(zhí)行 118
4.4.3 區(qū)塊鏈應(yīng)用的審計與監(jiān)管 120
本章小結(jié) 122
習(xí)題4 123
參考文獻 124
第5章 隱私保護理論基礎(chǔ) 128
5.1 對稱和公鑰密碼體制 128
5.1.1 基本概念 128
5.1.2 對稱加密算法 129
5.1.3 公鑰加密密碼算法 133
5.2 哈希算法 134
5.3 默克爾樹 136
5.4 布隆過濾器 137
5.5 橢圓曲線密碼學(xué) 138
5.5.1 橢圓曲線算法定義 138
5.5.2 基于橢圓曲線的Elgamal加密 139
5.6 數(shù)字簽名 140
5.6.1 數(shù)字簽名概述 140
5.6.2 Elgamal簽名 140
5.6.3 群簽名 141
5.6.4 環(huán)簽名 142
5.6.5 多重簽名 144
5.7 隱私計算 145
5.7.1 隱私計算概述 145
5.7.2 安全多方計算 146
5.7.3 同態(tài)加密 147
5.8 零知識證明 148
5.8.1 零知識證明概述 148
5.8.2 交互式零知識證明 149
5.8.3 非交互式零知識證明 150
本章小結(jié) 151
習(xí)題5 152
參考文獻 152
第6章 智能合約安全 155
6.1 智能合約簡介 155
6.1.1 智能合約的概念 155
6.1.2 智能合約歷史 156
6.1.3 智能合約編程語言 157
6.1.4 智能合約優(yōu)點和風(fēng)險 159
6.2 智能合約的安全漏洞 160
6.2.1 整數(shù)溢出漏洞 161
6.2.2 浮點數(shù)和精度安全漏洞 163
6.2.3 條件競爭漏洞 165
6.2.4 時間戳依賴漏洞 167
6.2.5 外部合約引用漏洞 168
6.2.6 代碼執(zhí)行漏洞 169
6.2.7 身份認(rèn)證漏洞 171
6.3 智能合約安全加固 173
6.3.1 智能合約形式化驗證 173
6.3.2 智能合約虛擬機安全 176
6.3.3 智能合約安全開發(fā) 177
本章小結(jié) 178
習(xí)題6 179
參考文獻 179
第7章 區(qū)塊鏈身份認(rèn)證 181
7.1 身份管理和認(rèn)證概述 181
7.1.1 身份管理概述 181
7.1.2 認(rèn)證概述 182
7.1.3 傳統(tǒng)身份管理與認(rèn)證問題 182
7.1.4 區(qū)塊鏈身份認(rèn)證優(yōu)勢 183
7.2 Hyperledger Indy身份管理 186
7.2.1 Indy項目概述 186
7.2.2 Indy核心算法 187
7.2.3 Indy身份管理案例 187
7.3 區(qū)塊鏈上的PKI身份部署 191
7.3.1 PKI概述 191
7.3.2 PKI架構(gòu) 192
7.3.3 PKI證書 194
7.3.4 現(xiàn)有PKI模型的挑戰(zhàn) 195
7.3.5 基于區(qū)塊鏈的PKI部署 195
7.3.6 身份鏈生態(tài)系統(tǒng) 198
本章小結(jié) 201
習(xí)題7 201
參考文獻 202
第8章 基于區(qū)塊鏈的隱私計算 203
8.1 區(qū)塊鏈與隱私計算概述 203
8.1.1 技術(shù)特點和分類 203
8.1.2 隱私計算的功能和驗證 204
8.1.3 應(yīng)用需求和場景 209
8.2 深度學(xué)習(xí)的技術(shù)原理 210
8.2.1 深度學(xué)習(xí)的定義 210
8.2.2 深度學(xué)習(xí)與人工智能機器學(xué)習(xí)的關(guān)系 211
8.2.3 深度學(xué)習(xí)的工作原理 211
8.2.4 深度學(xué)習(xí)的應(yīng)用場景 213
8.3 聯(lián)邦學(xué)習(xí)的技術(shù)原理 213
8.3.1 聯(lián)邦學(xué)習(xí)的定義 213
8.3.2 聯(lián)邦學(xué)習(xí)的分類 214
8.3.3 聯(lián)邦學(xué)習(xí)與分布式機器學(xué)習(xí)的區(qū)別 215
8.3.4 聯(lián)邦學(xué)習(xí)的架構(gòu)設(shè)計 216
8.4 基于區(qū)塊鏈技術(shù)的機器學(xué)習(xí) 218
8.4.1 機器學(xué)習(xí)的一般流程 218
8.4.2 為什么需要基于區(qū)塊鏈的機器學(xué)習(xí) 219
8.4.3 基于區(qū)塊鏈的機器學(xué)習(xí)系統(tǒng) 220
8.5 基于區(qū)塊鏈的聯(lián)邦學(xué)習(xí)方案 221
8.5.1 BlockFL 221
8.5.2 DeepChain 225
本章小結(jié) 229
習(xí)題8 229
參考文獻 229
第9章 可修訂區(qū)塊鏈 231
9.1 概述 231
9.1.1 區(qū)塊鏈可修訂的需求 231
9.1.2 可修訂區(qū)塊鏈的分類 232
9.1.3 可修訂區(qū)塊鏈的應(yīng)用 234
9.2 數(shù)據(jù)修改技術(shù) 236
9.2.1 可編輯簽名 236
9.2.2 可凈化簽名 240
9.2.3 變色龍哈希 243
9.3 基于簽名的可修訂區(qū)塊鏈 245
9.3.1 空間證明共識機制 246
9.3.2 基于可鏈接的多重簽名的可刪除區(qū)塊鏈[32] 247
9.3.3 基于改進門限環(huán)簽名的可刪除區(qū)塊鏈[34] 248
9.3.4 方案分析 249
9.4 可修訂區(qū)塊鏈的挑戰(zhàn)[1] 251
9.4.1 可編輯性和安全可靠性 251
9.4.2 修訂權(quán)的沖突和競爭 251
9.4.3 鏈上數(shù)據(jù)的安全和監(jiān)管 251
本章小結(jié) 252
習(xí)題9 252
參考文獻 253
第10章 區(qū)塊鏈應(yīng)用 256
10.1 區(qū)塊鏈在隱私計算中的應(yīng)用 256
10.1.1 區(qū)塊鏈和安全多方計算 256
10.1.2 區(qū)塊鏈和聯(lián)邦學(xué)習(xí) 258
10.1.3 區(qū)塊鏈和可信執(zhí)行環(huán)境 261
10.2 物聯(lián)網(wǎng)中的區(qū)塊鏈 262
10.2.1 工業(yè)物聯(lián)網(wǎng)應(yīng)用 262
10.2.2 智能家居應(yīng)用 265
10.2.3 供應(yīng)鏈溯源 269
10.3 區(qū)塊鏈與數(shù)字確權(quán) 272
10.3.1 版權(quán)與數(shù)字確權(quán) 272
10.3.2 區(qū)塊鏈確權(quán)的法律依據(jù) 274
10.3.3 案例:基于區(qū)塊鏈的確權(quán)系統(tǒng) 275
本章小結(jié) 278
本章練習(xí) 278
參考文獻 279