第1 章 區(qū)塊鏈簡介 / 1
1.1 戲說區(qū)塊鏈 / 2
1.2 正說區(qū)塊鏈 / 3
1.3 區(qū)塊鏈的未來:聯(lián)盟鏈 / 5
1.4 小結 /7
第2 章 區(qū)塊鏈架構 / 8
2.1 比特幣架構 / 9
2.2 以太坊架構 / 10
2.3 Hyperledger 架構 / 13
2.4 區(qū)塊鏈通用架構 /6
2.5 小結 / 19
第3 章 密碼學 . 20
3.1 加密與解密 / 21
3.1.1 加密與解密簡介 / 21
3.1.2 Java 實現(xiàn)/22
3.2 哈希 /46
3.2.1 散列函數(shù)簡介/46
3.2.2 SHA-256 Java 實戰(zhàn) /47
3.3 Merkle 樹 /50
3.3.1 Merkle 樹簡介 /50
3.3.2 Merkle 樹Java 實戰(zhàn) /52
3.4 小結 /63
第4 章 P2P 網絡構建 / 64
4.1 P2P 簡介 /65
4.2 區(qū)塊鏈P2P 網絡實現(xiàn)技術總結 /66
4.3 基于WebSocket 構建P2P 網絡 /68
4.3.1 WebSocket 介紹 /. 68
4.3.2 基于WebSocket 構建P2P 網絡 / 69
4.4 基于t-io 構建P2P 網絡 /. 78
4.4.1 t-io 介紹 78
4.4.2 t-io 的主要用法 / 80
4.4.3 基于t-io 構建P2P 網絡 . 83
4.5 小結 /96
第5 章 分布式一致性與共識算法 /97
5.1 區(qū)塊鏈的分布式 /98
5.2 Paxos 算法 / 99
5.3 ZooKeeper 中的分布式一致算法實現(xiàn) / 100
5.4 二、三階段提交協(xié)議 / 103
5.4.1 二階段提交協(xié)議/104
5.4.2 三階段提交協(xié)議/105
5.5 區(qū)塊鏈中的分布式一致性 /106
5.5.1 PoW 算法 /107
5.5.2 PoW 算法在比特幣系統(tǒng)的源碼實現(xiàn) /107
5.5.3 以太坊的PoW 實現(xiàn) /.109
5.6 聯(lián)盟鏈中PBFT 的實現(xiàn) / 111
5.6.1 什么是PBFT/112
5.6.2 PBFT 基于WebSocket 的實現(xiàn) / 114
5.6.3 PBFT 基于t-io 的實現(xiàn) /128
5.7 小結 / 147
第6 章 區(qū)塊設計 / 148
6.1 比特幣的區(qū)塊設計 . 149
6.2 以太坊的區(qū)塊設計 . 151
6.3 Hyperledger 的區(qū)塊設計 /152
6.4 Java 版區(qū)塊設計 / 153
6.5 小結 / 160
第7 章 區(qū)塊存儲 / 161
7.1 區(qū)塊存儲技術 / 162
7.2 用Java 實現(xiàn)文件存儲 / 163
7.2.1 Guava 文件操作/163
7.2.2 Guava 實現(xiàn)文件存儲 /165
7.3 用Java 實現(xiàn)SQLite 存儲 /170
7.3.1 SQLite 介紹 /170
7.3.2 SQLite 的使用 / 171
7.4 用Java 實現(xiàn)LevelDB 存儲 /185
7.4.1 LevelDB 介紹 /185
7.4.2 LevelDB 的使用 186
7.5 用Java 實現(xiàn)RocksDB 存儲 / 191
7.5.1 RocksDB 介紹 / 191
7.5.2 RocksDB 的使用 192
7.6 用Java 實現(xiàn)CouchDB 存儲 / 195
7.6.1 CouchDB 介紹/ 195
7.6.2 CouchDB 的使用 196
7.7 小結 / 201
第8 章 聯(lián)盟鏈中的幣設計 202
8.1 比特幣的幣設計 /203
8.2 以太幣的激勵機制 /206
8.3 Java 版聯(lián)盟鏈的幣設計與實現(xiàn) /208
8.3.1 管理后臺幣的配置 /208
8.3.2 Java 實現(xiàn)幣交易 212
8.4 小結 / 235
第9 章 聯(lián)盟鏈管理后臺 / 236
9.1 超級賬本的成員管理 /237
9.2 Java 版聯(lián)盟鏈成員管理設計與實現(xiàn) /.238
9.2.1 加入聯(lián)盟模塊的設計與實現(xiàn) / 239
9.2.2 聯(lián)盟成員認證模塊 /246
9.2.3 聯(lián)盟成員密鑰分發(fā)模塊 / 257
9.3 小結 / 260
第10 章 聯(lián)盟鏈的運營 /261
10.1 聯(lián)盟鏈會員章程 /262
10.2 聯(lián)盟鏈代碼使用方式 / 269
10.3 聯(lián)盟鏈代碼升級 /272
10.4 聯(lián)盟鏈代碼安全 /273
10.5 聯(lián)盟鏈激勵體系運營 /273
10.6 小結 / 274
附錄A TextNG /275
附錄B Mockito / 279
附錄C CouchDB 的安裝 / 283
后記 /286