定 價:¥69.00
作 者: | 劉文彬 |
出版社: | 電子工業(yè)出版社 |
叢編項: | |
標 簽: | 暫缺 |
ISBN: | 9787121369285 | 出版時間: | 2019-06-01 | 包裝: | 平裝 |
開本: | 16開 | 頁數(shù): | 276 | 字數(shù): |
第1章 加密算法 1
1.1 單向哈希函數(shù) 1
1.2 對稱加密 2
1.3 非對稱加密 3
1.4 本章小結 3
第2章 啟動單節(jié)點EOS鏈 4
2.1 源代碼結構 4
2.2 編譯工程 4
2.2.1 腳本eosio_build.sh 5
2.2.2 常見錯誤 6
2.3 安裝命令 6
2.4 啟動nodeos 7
2.4.1 nodeos命令詳解 7
2.4.2 啟動一個獨立節(jié)點 8
2.4.3 RPC API 10
2.5 錢包服務keosd 11
2.6 Docker啟動 12
2.7 本章小結 14
第3章 終端交互命令cleos 15
3.1 cleos命令概述 15
3.2 create命令 16
3.3 convert腳本命令 17
3.3.1 打包事務 17
3.3.2 解包事務 18
3.3.3 打包action數(shù)據(jù) 19
3.4 get命令 20
3.5 set命令 21
3.5.1 設置賬戶權限 22
3.5.2 設置action權限 23
3.6 transfer命令 24
3.7 net命令 25
3.8 錢包操作 25
3.8.1 創(chuàng)建錢包 25
3.8.2 導入私鑰 26
3.8.3 創(chuàng)建密鑰 26
3.8.4 列舉錢包 27
3.8.5 查看私鑰 27
3.9 sign命令 27
3.10 push命令 28
3.11 multisig命令 28
3.11.1 準備環(huán)境 28
3.11.2 準備賬戶 29
3.11.3 普通轉賬 29
3.11.4 創(chuàng)建提案 30
3.11.5 查看提案 31
3.11.6 審批提案 33
3.11.7 執(zhí)行提案 34
3.11.8 權重為1的情況 35
3.12 超級權限sudo命令 36
3.13 系統(tǒng)命令system 36
3.14 本章小結 37
第4章 構建公鏈網(wǎng)絡 38
4.1 公鏈網(wǎng)絡概述 38
4.2 bbt腳本構建公鏈 38
4.2.1 bbt腳本幫助文檔 39
4.2.2 執(zhí)行bbt腳本 41
4.3 公鏈資源管理 42
4.3.1 抵押帶寬 43
4.3.2 投票與代理投票 47
4.3.3 贖回帶寬 49
4.3.4 買賣內存資源 50
4.4 公鏈啟動重點步驟 51
4.4.1 創(chuàng)建系統(tǒng)賬戶 51
4.4.2 創(chuàng)建普通賬戶(資源管理) 52
4.4.3 注冊生產候選人 55
4.4.4 查看生產候選人 55
4.4.5 查看賬戶資源 56
4.4.6 為候選人投票 56
4.4.7 生產者認領獎勵 57
4.5 啟動結束掃尾工作 58
4.5.1 查看出塊計劃 58
4.5.2 處理eosio賬戶 59
4.5.3 處理系統(tǒng)賬戶 60
4.5.4 處理system合約 60
4.6 手動構建多機多節(jié)點網(wǎng)絡 60
4.6.1 初始節(jié)點準備 61
4.6.2 連接多機多節(jié)點 62
4.7 本章小結 63
第5章 源代碼調試入門 64
5.1 調試環(huán)境搭建 64
5.2 調試nodeos命令 66
5.2.1 CMakeList.txt 66
5.2.2 application 66
5.2.3 插件初始化 68
5.2.4 啟動插件 72
5.2.5 執(zhí)行插件 74
5.2.6 斷開和異常處理 75
5.3 調試cleos創(chuàng)建賬戶 75
5.3.1 入口main函數(shù) 75
5.3.2 get info熱身 76
5.3.3 開始調試 78
5.3.4 事務相關參數(shù) 79
5.3.5 回調函數(shù) 80
5.3.6 context_free_actions 84
5.3.7 獲取必需密鑰 86
5.3.8 簽名事務 86
5.3.9 打包事務 87
5.4 本章小結 88
第6章 數(shù)據(jù)持久化 89
6.1 blocks.log日志庫 89
6.1.1 Merkle Tree 89
6.1.2 區(qū)塊鏈數(shù)據(jù)結構 91
6.1.3 數(shù)據(jù)持久化概述 96
6.1.4 block_log接口 98
6.1.5 repair_log函數(shù) 99
6.2 chainbase狀態(tài)庫 101
6.2.1 并發(fā)訪問 102
6.2.2 undo操作 103
6.2.3 持久化處理 107
6.2.4 移植性 110
6.2.5 multi_index 111
6.2.6 與blocks.log對比 114
6.3 controller控制器 114
6.3.1 控制器概覽 114
6.3.2 控制器的信號 118
6.3.3 控制器實現(xiàn)概覽 123
6.3.4 待確認庫/分叉庫 124
6.3.5 快照技術 130
6.4 本章小結 136
第7章 智能合約 137
7.1 簡介 137
7.2 合約開發(fā)工具集 138
7.2.1 安裝cdt 138
7.2.2 編譯合約 139
7.2.3 部署合約 139
7.2.4 執(zhí)行合約動作 140
7.2.5 編寫合約 140
7.2.6 李嘉圖合約 141
7.2.7 更新合約 141
7.2.8 調試合約 142
7.3 eosio.token 通證 142
7.3.1 創(chuàng)建token 142
7.3.2 發(fā)行token 143
7.3.3 token轉賬 145
7.3.4 余額減少 146
7.3.5 余額增加 147
7.4 eosio.system系統(tǒng)設置 148
7.4.1 概覽 148
7.4.2 更新已入選生產節(jié)點 150
7.4.3 系統(tǒng)合約管理出塊 153
7.4.4 初始化主幣 155
7.4.5 非常規(guī)賬戶競拍 156
7.4.6 創(chuàng)建賬戶 158
7.5 本章小結 160
第8章 插件系統(tǒng)源代碼解析 161
8.1 chain_plugin鏈行為核心 161
8.1.1 接口列表 161
8.1.2 同步只讀 162
8.1.3 異步讀寫 164
8.1.4 API插件的生命周期 166
8.1.5 結構體成員序列化 166
8.1.6 chain插件生命周期 167
8.1.7 RPC接口實現(xiàn) 170
8.2 http_plugin 基礎RPC 194
8.2.1 EOS插件通信模式 194
8.2.2 add_api函數(shù) 196
8.2.3 add_handler函數(shù) 197
8.2.4 url_handlers集合 198
8.2.5 處理HTTP請求 198
8.2.6 生命周期 200
8.3 producer_plugin生產區(qū)塊 206
8.3.1 生命周期 207
8.3.2 同步區(qū)塊 210
8.3.3 同步事務 213
8.3.4 區(qū)塊上鏈 218
8.3.5 區(qū)塊不可逆 220
8.3.6 最后不可逆 221
8.3.7 鏈的條幅日志 223
8.3.8 倒計時器 224
8.3.9 循環(huán)計劃出塊 226
8.3.10 校驗生產區(qū)塊 229
8.3.11 生產區(qū)塊 230
8.3.12 啟動出塊管理 231
8.4 mongo_db_plugin狀態(tài)持久化 232
8.4.1 生命周期 233
8.4.2 信號管理 236
8.4.3 隊列 237
8.4.4 擦除數(shù)據(jù)庫 238
8.4.5 初始化插件 239
8.4.6 區(qū)塊消費 241
8.4.7 接收事務信號處理 243
8.4.8 應用事務信號處理 245
8.4.9 接收區(qū)塊信號處理 246
8.4.10 不可逆區(qū)塊信號處理 248
8.5 txn_test_gen_plugin測試TPS插件 250
8.5.1 插件的整體架構 250
8.5.2 創(chuàng)建測試賬戶接口 251
8.5.3 啟動測試接口 256
8.5.4 終止程序接口 261
8.5.5 TPS 261
8.6 本章小結 262