區(qū)塊鏈技術面臨隱私泄露風險,傳統(tǒng)的隱私保護技術又不適用,因此深入剖析區(qū)塊鏈隱私泄露的原因、研究適用的隱私保護方法具有重要意義。本書內(nèi)容系統(tǒng)且新穎,從區(qū)塊鏈底層技術原理,到信息服務模式對區(qū)塊鏈安全提出的新需求和新挑戰(zhàn),再到隱私保護的各種基礎理論、關鍵技術及實用性,全面闡述了區(qū)塊鏈隱私保護的內(nèi)涵。 本書共10章,主要內(nèi)容包括:區(qū)塊鏈基礎,區(qū)塊鏈技術原理,區(qū)塊鏈共識機制,區(qū)塊鏈安全和隱私,隱私保護理論基礎,智能合約安全,區(qū)塊鏈身份認證,基于區(qū)塊鏈的隱私計算,可修訂區(qū)塊鏈,區(qū)塊鏈隱私技術應用。 本書可作為高等院校計算機、區(qū)塊鏈和其他信息學科相關專業(yè)的教材,也可供對區(qū)塊鏈、數(shù)據(jù)共享和數(shù)字經(jīng)濟感興趣的研究人員和工程技術人員閱讀參考。
楊旸,女,博士后,副教授,博士生導師,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項,已授權軟件著作權11項。
目 錄
第1章 區(qū)塊鏈基礎 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架構 14
1.2.2 比特幣 15
1.2.3 區(qū)塊鏈2.0架構 22
1.2.4 以太坊與智能合約 23
1.3 聯(lián)盟鏈 29
1.3.1 區(qū)塊鏈3.0架構 30
1.3.2 超級賬本 32
1.4 私有鏈 38
本章小結 39
習題1 39
參考文獻 40
第2章 區(qū)塊鏈技術原理 41
2.1 區(qū)塊鏈技術基礎 41
2.1.1 P2P網(wǎng)絡 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 跨鏈技術 57
2.3.3 通道 62
2.3.4 有向無環(huán)圖 66
本章小結 68
習題2 68
參考文獻 68
第3章 區(qū)塊鏈共識機制 70
3.1 拜占庭容錯技術 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 權益證明 84
3.5.4 委托權益證明 86
3.5.5 其他共識算法 86
3.6 共識安全威脅 93
3.6.1 雙花攻擊 93
3.6.2 自私挖礦攻擊 95
3.6.3 幣齡累計攻擊 95
3.6.4 長程攻擊 96
本章小結 96
習題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)的安全風險 110
4.3.1 數(shù)據(jù)一致性風險 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ū)塊鏈應用的審計與監(jiān)管 120
本章小結 122
習題4 123
參考文獻 124
第5章 隱私保護理論基礎 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 橢圓曲線密碼學 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
本章小結 151
習題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)點和風險 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 身份認證漏洞 171
6.3 智能合約安全加固 173
6.3.1 智能合約形式化驗證 173
6.3.2 智能合約虛擬機安全 176
6.3.3 智能合約安全開發(fā) 177
本章小結 178
習題6 179
參考文獻 179
第7章 區(qū)塊鏈身份認證 181
7.1 身份管理和認證概述 181
7.1.1 身份管理概述 181
7.1.2 認證概述 182
7.1.3 傳統(tǒng)身份管理與認證問題 182
7.1.4 區(qū)塊鏈身份認證優(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架構 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
本章小結 201
習題7 201
參考文獻 202
第8章 基于區(qū)塊鏈的隱私計算 203
8.1 區(qū)塊鏈與隱私計算概述 203
8.1.1 技術特點和分類 203
8.1.2 隱私計算的功能和驗證 204
8.1.3 應用需求和場景 209
8.2 深度學習的技術原理 210
8.2.1 深度學習的定義 210
8.2.2 深度學習與人工智能機器學習的關系 211
8.2.3 深度學習的工作原理 211
8.2.4 深度學習的應用場景 213
8.3 聯(lián)邦學習的技術原理 213
8.3.1 聯(lián)邦學習的定義 213
8.3.2 聯(lián)邦學習的分類 214
8.3.3 聯(lián)邦學習與分布式機器學習的區(qū)別 215
8.3.4 聯(lián)邦學習的架構設計 216
8.4 基于區(qū)塊鏈技術的機器學習 218
8.4.1 機器學習的一般流程 218
8.4.2 為什么需要基于區(qū)塊鏈的機器學習 219
8.4.3 基于區(qū)塊鏈的機器學習系統(tǒng) 220
8.5 基于區(qū)塊鏈的聯(lián)邦學習方案 221
8.5.1 BlockFL 221
8.5.2 DeepChain 225
本章小結 229
習題8 229
參考文獻 229
第9章 可修訂區(qū)塊鏈 231
9.1 概述 231
9.1.1 區(qū)塊鏈可修訂的需求 231
9.1.2 可修訂區(qū)塊鏈的分類 232
9.1.3 可修訂區(qū)塊鏈的應用 234
9.2 數(shù)據(jù)修改技術 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 修訂權的沖突和競爭 251
9.4.3 鏈上數(shù)據(jù)的安全和監(jiān)管 251
本章小結 252
習題9 252
參考文獻 253
第10章 區(qū)塊鏈應用 256
10.1 區(qū)塊鏈在隱私計算中的應用 256
10.1.1 區(qū)塊鏈和安全多方計算 256
10.1.2 區(qū)塊鏈和聯(lián)邦學習 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)應用 262
10.2.2 智能家居應用 265
10.2.3 供應鏈溯源 269
10.3 區(qū)塊鏈與數(shù)字確權 272
10.3.1 版權與數(shù)字確權 272
10.3.2 區(qū)塊鏈確權的法律依據(jù) 274
10.3.3 案例:基于區(qū)塊鏈的確權系統(tǒng) 275
本章小結 278
本章練習 278
參考文獻 279