注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)GO語言公鏈開發(fā)實(shí)戰(zhàn)

GO語言公鏈開發(fā)實(shí)戰(zhàn)

GO語言公鏈開發(fā)實(shí)戰(zhàn)

定 價(jià):¥89.00

作 者: 鄭東旭,楊明珠,潘盈瑜,翟萌 著
出版社: 機(jī)械工業(yè)出版社
叢編項(xiàng): 區(qū)塊鏈技術(shù)叢書
標(biāo) 簽: 暫缺

購買這本書可以去


ISBN: 9787111629870 出版時(shí)間: 2019-07-01 包裝: 平裝
開本: 16開 頁數(shù): 308 字?jǐn)?shù):  

內(nèi)容簡介

  本書系統(tǒng)地介紹區(qū)塊鏈設(shè)計(jì)原理和開發(fā)技術(shù),包含公鏈的整體架構(gòu)和開發(fā)細(xì)節(jié),主要內(nèi)容包括:第1章介紹公鏈設(shè)計(jì)架構(gòu);第2~4章介紹比原鏈的交互工具、核心進(jìn)程bytomd,以及API Server實(shí)現(xiàn)原理和接口設(shè)計(jì)。第5章和第6章詳細(xì)介紹區(qū)塊鏈核心部分,包括區(qū)塊、區(qū)塊鏈、交易的核心數(shù)據(jù)結(jié)構(gòu),以及UTXO模型、隔離見證、交易腳本、驗(yàn)證等技術(shù)概念的實(shí)現(xiàn)。第7章和第8章講解比原鏈智能合約以及智能合約在BVM虛擬機(jī)上運(yùn)行的過程。第9章和第10章介紹區(qū)塊鏈錢包的設(shè)計(jì)與交易流程,包括密鑰、賬戶、資產(chǎn)管理、交易管理等,還詳解了區(qū)塊鏈P2P分布式網(wǎng)絡(luò)實(shí)現(xiàn)原理。第11~13章介紹數(shù)據(jù)存儲(chǔ)、共識(shí)算法,以及挖礦相關(guān)的概念和流程。第14章展望了區(qū)塊鏈技術(shù)未來的發(fā)展趨勢(shì)。

作者簡介

暫缺《GO語言公鏈開發(fā)實(shí)戰(zhàn)》作者簡介

圖書目錄

推薦序一
推薦序二
前言
第1章 公鏈設(shè)計(jì)架構(gòu) 1
1.1 概述 1
1.2 公鏈總體架構(gòu) 2
1.3 比原鏈各模塊功能 2
1.3.1 用戶交互層 2
1.3.2 接口層 4
1.3.3 內(nèi)核層 4
1.3.4 錢包層 6
1.3.5 共識(shí)層 6
1.3.6 數(shù)據(jù)存儲(chǔ)層 7
1.3.7 P2P分布式網(wǎng)絡(luò) 8
1.4 編譯部署及應(yīng)用 9
1.5 本章小結(jié) 12
第2章 交互工具 13
2.1 概述 13
2.2 bytomcli交互工具 13
2.2.1 bytomcli命令flag參數(shù) 13
2.2.2 使用bytomcli查看節(jié)點(diǎn)狀態(tài)信息 15
2.2.3 bytomcli運(yùn)行案例 16
2.3 dashboard交互工具 21
2.3.1 使用dashboard發(fā)送一筆交易 22
2.3.2 使用dashboard開啟挖礦模式 22
2.4 本章小結(jié) 24
第3章 守護(hù)進(jìn)程的初始化與運(yùn)行 25
3.1 概述 25
3.2 bytomd守護(hù)進(jìn)程初始化流程及命令參數(shù) 25
3.3 bytomd守護(hù)進(jìn)程的初始化實(shí)現(xiàn) 27
3.3.1 Node對(duì)象 28
3.3.2 配置初始化 29
3.3.3 創(chuàng)建文件鎖 32
3.3.4 初始化網(wǎng)絡(luò)類型 33
3.3.5 初始化數(shù)據(jù)庫(持久化存儲(chǔ)) 35
3.3.6 初始化交易池 35
3.5.7 創(chuàng)建一條本地區(qū)塊鏈 36
3.3.8 初始化本地錢包 37
3.3.9 初始化網(wǎng)絡(luò)同步管理 37
3.3.10 初始化Pprof性能分析工具 38
3.3.11 初始化CPU挖礦功能 38
3.4 bytomd守護(hù)進(jìn)程的啟動(dòng)方式和停止方式 39
3.5 本章小結(jié) 40
第4章 接口層 41
4.1 概述 41
4.2 實(shí)現(xiàn)一個(gè)簡易HTTP Server 41
4.3 API Server創(chuàng)建HTTP服務(wù) 42
4.3.1 創(chuàng)建API對(duì)象 42
4.3.2 創(chuàng)建路由項(xiàng) 43
4.3.3 實(shí)例化http.Server 44
4.3.4 啟動(dòng)API Server 45
4.3.5 接收并響應(yīng)請(qǐng)求 45
4.4 HTTP請(qǐng)求的完整生命周期 47
4.5 比原鏈API接口描述 48
4.6 API接口調(diào)用工具 50
4.6.1 使用curl命令行調(diào)用API接口 50
4.6.2 使用Postman調(diào)用API接口 50
4.7 比原鏈HTTP錯(cuò)誤碼一覽 51
4.8 本章小結(jié) 52
第5章 內(nèi)核層:區(qū)塊與區(qū)塊鏈 53
5.1 概述 53
5.2 區(qū)塊 53
5.2.1 區(qū)塊的數(shù)據(jù)結(jié)構(gòu) 53
5.2.2 區(qū)塊頭的數(shù)據(jù)結(jié)構(gòu) 54
5.2.3 區(qū)塊標(biāo)識(shí)符 55
5.2.4 創(chuàng)世區(qū)塊 56
5.2.5 生成創(chuàng)世區(qū)塊 57
5.2.6 區(qū)塊驗(yàn)證 58
5.2.7 計(jì)算下一個(gè)區(qū)塊的難度目標(biāo) 60
5.2.8 孤塊管理 60
5.3 區(qū)塊鏈 63
5.3.1 區(qū)塊鏈的數(shù)據(jù)結(jié)構(gòu) 63
5.3.2 區(qū)塊上鏈 64
5.3.3 區(qū)塊連接 65
5.3.4 鏈重組 66
5.3.5 主鏈的狀態(tài) 69
5.4 本章小結(jié) 70
第6章 內(nèi)核層:交易 71
6.1 概述 71
6.2 交易的概念 71
6.2.1 現(xiàn)實(shí)生活中的交易 71
6.2.2 虛擬世界中的交易 72
6.3 核心數(shù)據(jù)結(jié)構(gòu) 72
6.3.1 普通交易核心數(shù)據(jù)結(jié)構(gòu) 73
6.3.2 Coinbase交易核心數(shù)據(jù)結(jié)構(gòu) 78
6.3.3 交易Action數(shù)據(jù)結(jié)構(gòu) 81
6.3.4 MUX交易類型 85
6.4 BUTXO模型 86
6.4.1 BUTXO模型原理 87
6.4.2 MUX結(jié)構(gòu) 88
6.5 交易的流程 89
6.5.1 構(gòu)建交易 89
6.5.2 簽名交易 93
6.5.3 提交交易 95
6.6 隔離見證 97
6.7 交易腳本 97
6.7.1 支付到公鑰 98
6.7.2 支付到腳本 99
6.7.3 資產(chǎn)上鏈 100
6.7.4 資產(chǎn)銷毀 102
6.7.5 見證腳本 102
6.7.6 棧語言 103
6.8 交易驗(yàn)證 105
6.8.1 標(biāo)準(zhǔn)交易 105
6.8.2 交易驗(yàn)證流程 106
6.9 交易費(fèi) 108
6.9.1 估算交易手續(xù)費(fèi) 108
6.9.2 計(jì)算交易手續(xù)費(fèi) 110
6.10 交易池 111
6.11 默克爾樹 112
6.12 本章小結(jié) 115
第7章 內(nèi)核層:智能合約 116
7.1 概述 116
7.2 基礎(chǔ)知識(shí) 116
7.2.1 智能合約 116
7.2.2 圖靈完備的智能合約 117
7.2.3 UTXO模型和Account模型 117
7.3 合約層設(shè)計(jì) 118
7.4 智能合約語言 119
7.4.1 Equity語言 119
7.4.2 Equity合約組成 119
7.5 基于UTXO模型合約開發(fā)實(shí)戰(zhàn) 122
7.5.1 編寫合約 123
7.5.2 編譯合約 123
7.5.3 部署合約 125
7.5.4 解鎖合約 129
7.6 本章小結(jié) 132
第8章 內(nèi)核層:虛擬機(jī) 133
8.1 概述 133
8.2 BVM介紹 134
8.2.1 虛擬機(jī)的棧 134
8.2.2 具有圖靈完備性的BVM 135
8.2.3 equity & vm代碼結(jié)構(gòu) 135
8.3 virtualMachine對(duì)象 136
8.4 棧實(shí)現(xiàn) 137
8.5 BVM操作指令集 139
8.6 智能合約在BVM上的運(yùn)行過程 141
8.6.1 智能合約數(shù)據(jù)結(jié)構(gòu) 141
8.6.2 合約編譯流程與原理 142
8.6.3 合約程序字節(jié)碼示例 156
8.6.4 合約程序字節(jié)碼的執(zhí)行 157
8.6.5 合約程序字節(jié)碼的執(zhí)行示例 159
8.7 BVM指令集 160
8.8 本章小結(jié) 165
第9章 錢包層 166
9.1 概述 166
9.2 錢包對(duì)象 167
9.3 密鑰管理 167
9.3.1 密鑰對(duì)生成 169
9.3.2 密鑰對(duì)生成算法 170
9.3.3 密鑰加密存儲(chǔ) 172
9.4 賬戶管理 174
9.4.1 賬戶創(chuàng)建 175
9.4.2 賬戶地址 176
9.4.3 賬戶余額 178
9.5 資產(chǎn)管理 179
9.5.1 初始默認(rèn)資產(chǎn) 179
9.5.2 發(fā)行資產(chǎn) 180
9.6 交易管理 182
9.6.1 篩選交易 182
9.6.2 篩選UTXO 183
9.6.3 UTXO花費(fèi)選擇算法 184
9.7 錢包管理 186
9.7.1 數(shù)據(jù)更新 186
9.7.2 備份 187
9.7.3 恢復(fù) 188
9.8 本章小結(jié) 188
第10章 P2P分布式網(wǎng)絡(luò) 189
10.1 概述 189
10.2 P2P的四種網(wǎng)絡(luò)模型 189
10.3 網(wǎng)絡(luò)節(jié)點(diǎn)初始化 191
10.3.1 SyncManager初始化 191
10.3.2 P2P Switch初始化 194
10.4 節(jié)點(diǎn)發(fā)現(xiàn)機(jī)制 196
10.4.1 種子節(jié)點(diǎn) 196
10.4.2 Kademlia算法 197
10.4.3 UPnP協(xié)議 203
10.4.4 RLPX網(wǎng)絡(luò)協(xié)議 205
10.5 節(jié)點(diǎn)發(fā)現(xiàn)代碼實(shí)現(xiàn) 206
10.5.1 節(jié)點(diǎn)發(fā)現(xiàn)初始化 206
10.5.2 路由表實(shí)現(xiàn) 207
10.5.3 Kademlia通信協(xié)議 212
10.5.4 鄰居節(jié)點(diǎn)發(fā)現(xiàn)實(shí)現(xiàn) 212
10.6 節(jié)點(diǎn)狀態(tài)機(jī) 219
10.7 區(qū)塊同步 223
10.7.1 區(qū)塊同步流程 223
10.7.2 快速同步算法 225
10.7.3 普通同步算法 230
10.7.4 區(qū)塊數(shù)據(jù)請(qǐng)求與發(fā)送 231
10.8 交易同步 233
10.9 快速廣播 235
10.9.1 新交易快速廣播 236
10.9.2 新區(qū)塊快速廣播 238
10.10 節(jié)點(diǎn)管理 239
10.10.1 TCP連接數(shù)管理 240
10.10.2 Outbound連接數(shù)管理 240
10.10.3 動(dòng)態(tài)節(jié)點(diǎn)評(píng)分機(jī)制DynamicBanScore 241
10.11 本章小結(jié) 245
第11章 數(shù)據(jù)存儲(chǔ) 246
11.1 概述 246
11.2 為什么使用鍵值數(shù)據(jù)庫 246
11.3 LevelDB常用操作 247
11.3.1 增刪改查操作 247
11.3.2 迭代查詢 248
11.3.3 按前綴查詢 249
11.3.4 批量操作 249
11.4 存儲(chǔ)層緩存 250
11.4.1 緩存淘汰算法 250
11.4.2 比原鏈緩存實(shí)現(xiàn) 252
11.5 存儲(chǔ)層持久化 254
11.5.1 比原鏈數(shù)據(jù)庫 254
11.5.2 持久化存儲(chǔ)接口 255
11.5.3 持久化key數(shù)據(jù)前綴 255
11.5.4 持久化存儲(chǔ)區(qū)塊過程 256
11.6 Varint變長編碼 257
11.7 本章小結(jié) 258
第12章 共識(shí)算法 259
12.1 概述 259
12.2 PoW和PoS 259
12.3 實(shí)現(xiàn)一個(gè)簡易PoW共識(shí)算法 261
12.4 比原鏈PoW共識(shí)算法 266
12.4.1 PoW hash值 266
12.4.2 難度動(dòng)態(tài)調(diào)整 267
12.4.3 Tensority算法 268
12.5 本章小結(jié) 278
第13章 礦池及挖礦流程 279
13.1 概述 279
13.2 與礦池相關(guān)的基本概念 279
13.3 礦池總架構(gòu) 280
13.4 挖礦流程解析(礦池視角) 282
13.5 挖礦流程解析(礦機(jī)視角) 283
13.6 拒絕數(shù)與拒絕率 286
13.7 礦池的收益分配模式 286
13.8 交易打包至區(qū)塊 287
13.8.1 Coinbase交易獎(jiǎng)勵(lì) 288
13.8.2 交易手續(xù)費(fèi)Gas 289
13.9 礦池優(yōu)化建議 290
13.10 本章小結(jié) 291
第14章 展望 292
14.1 概述 292
14.2 跨鏈 293
14.2.1 打通鏈與鏈的連接 293
14.2.2 BTC、ETH與BTM的跨鏈資產(chǎn)交換 293
14.3 閃電網(wǎng)絡(luò) 294
14.4 子鏈 295
14.5 本章小結(jié) 296

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)