注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)網(wǎng)絡(luò)與數(shù)據(jù)通信網(wǎng)絡(luò)服務(wù)EOS實戰(zhàn)與源碼分析

EOS實戰(zhàn)與源碼分析

EOS實戰(zhàn)與源碼分析

定 價:¥69.00

作 者: 劉文彬
出版社: 電子工業(yè)出版社
叢編項:
標 簽: 暫缺

ISBN: 9787121369285 出版時間: 2019-06-01 包裝: 平裝
開本: 16開 頁數(shù): 276 字數(shù):  

內(nèi)容簡介

  在區(qū)塊鏈世界,區(qū)塊鏈1.0時代是比特幣,區(qū)塊鏈2.0時代是以太坊,區(qū)塊鏈3.0時代是EOS。EOS如同一個完整的操作系統(tǒng),用戶或者機構(gòu)可基于它構(gòu)建各種應(yīng)用程序。本書共有8章,可分為使用手冊與源碼分析兩部分。使用手冊部分主要介紹如何快速啟動單節(jié)點EOS鏈、終端交互命令cleos的使用,并模擬公鏈的配置與啟動。源碼分析部分主要介紹源代碼調(diào)試、EOS數(shù)據(jù)持久化機制、系統(tǒng)智能合約架構(gòu)以及插件系統(tǒng)。無論是正在使用EOS的軟件工程師、測試工程師、運維工程師、架構(gòu)師,還是熱衷新技術(shù)的產(chǎn)品經(jīng)理、管理人員,本書都具備很強的輔導(dǎo)和參考價值。

作者簡介

  劉文彬,北京航空航天大學(xué)軟件工程碩士,IT互聯(lián)網(wǎng)行業(yè)從業(yè)8年,現(xiàn)任某互聯(lián)網(wǎng)公司架構(gòu)師。 區(qū)塊鏈技術(shù)博客博主EOSIO開源項目貢獻者之一IEEE區(qū)塊鏈北京專家組成員IEEE P2418.1區(qū)塊鏈標準工作組專家委員在以太坊、EOS、比特幣Omni協(xié)議、Oracle等方向有深入研究,擅長區(qū)塊鏈產(chǎn)品設(shè)計、架構(gòu)以及自動化運維等。目前專注于區(qū)塊鏈領(lǐng)域的技術(shù)探索,致力于發(fā)展下一代DApp。

圖書目錄

第1章 加密算法 1

1.1 單向哈希函數(shù) 1

1.2 對稱加密 2

1.3 非對稱加密 3

1.4 本章小結(jié) 3

第2章 啟動單節(jié)點EOS鏈 4

2.1 源代碼結(jié)構(gòu) 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 錢包服務(wù)keosd 11

2.6 Docker啟動 12

2.7 本章小結(jié) 14

第3章 終端交互命令cleos 15

3.1 cleos命令概述 15

3.2 create命令 16

3.3 convert腳本命令 17

3.3.1 打包事務(wù) 17

3.3.2 解包事務(wù) 18

3.3.3 打包action數(shù)據(jù) 19

3.4 get命令 20

3.5 set命令 21

3.5.1 設(shè)置賬戶權(quán)限 22

3.5.2 設(shè)置action權(quán)限 23

3.6 transfer命令 24

3.7 net命令 25

3.8 錢包操作 25

3.8.1 創(chuàng)建錢包 25

3.8.2 導(dǎo)入私鑰 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 普通轉(zhuǎn)賬 29

3.11.4 創(chuàng)建提案 30

3.11.5 查看提案 31

3.11.6 審批提案 33

3.11.7 執(zhí)行提案 34

3.11.8 權(quán)重為1的情況 35

3.12 超級權(quán)限sudo命令 36

3.13 系統(tǒng)命令system 36

3.14 本章小結(jié) 37

第4章 構(gòu)建公鏈網(wǎng)絡(luò) 38

4.1 公鏈網(wǎng)絡(luò)概述 38

4.2 bbt腳本構(gòu)建公鏈 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 買賣內(nèi)存資源 50

4.4 公鏈啟動重點步驟 51

4.4.1 創(chuàng)建系統(tǒng)賬戶 51

4.4.2 創(chuàng)建普通賬戶(資源管理) 52

4.4.3 注冊生產(chǎn)候選人 55

4.4.4 查看生產(chǎn)候選人 55

4.4.5 查看賬戶資源 56

4.4.6 為候選人投票 56

4.4.7 生產(chǎn)者認領(lǐng)獎勵 57

4.5 啟動結(jié)束掃尾工作 58

4.5.1 查看出塊計劃 58

4.5.2 處理eosio賬戶 59

4.5.3 處理系統(tǒng)賬戶 60

4.5.4 處理system合約 60

4.6 手動構(gòu)建多機多節(jié)點網(wǎng)絡(luò) 60

4.6.1 初始節(jié)點準備 61

4.6.2 連接多機多節(jié)點 62

4.7 本章小結(jié) 63

第5章 源代碼調(diào)試入門 64

5.1 調(diào)試環(huán)境搭建 64

5.2 調(diào)試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 調(diào)試cleos創(chuàng)建賬戶 75

5.3.1 入口main函數(shù) 75

5.3.2 get info熱身 76

5.3.3 開始調(diào)試 78

5.3.4 事務(wù)相關(guān)參數(shù) 79

5.3.5 回調(diào)函數(shù) 80

5.3.6 context_free_actions 84

5.3.7 獲取必需密鑰 86

5.3.8 簽名事務(wù) 86

5.3.9 打包事務(wù) 87

5.4 本章小結(jié) 88

第6章 數(shù)據(jù)持久化 89

6.1 blocks.log日志庫 89

6.1.1 Merkle Tree 89

6.1.2 區(qū)塊鏈數(shù)據(jù)結(jié)構(gòu) 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 快照技術(shù) 130

6.4 本章小結(jié) 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 調(diào)試合約 142

7.3 eosio.token 通證 142

7.3.1 創(chuàng)建token 142

7.3.2 發(fā)行token 143

7.3.3 token轉(zhuǎn)賬 145

7.3.4 余額減少 146

7.3.5 余額增加 147

7.4 eosio.system系統(tǒng)設(shè)置 148

7.4.1 概覽 148

7.4.2 更新已入選生產(chǎn)節(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 本章小結(jié) 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 結(jié)構(gòu)體成員序列化 166

8.1.6 chain插件生命周期 167

8.1.7 RPC接口實現(xiàn) 170

8.2 http_plugin 基礎(chǔ)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生產(chǎn)區(qū)塊 206

8.3.1 生命周期 207

8.3.2 同步區(qū)塊 210

8.3.3 同步事務(wù) 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 校驗生產(chǎn)區(qū)塊 229

8.3.11 生產(chǎn)區(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 接收事務(wù)信號處理 243

8.4.8 應(yīng)用事務(wù)信號處理 245

8.4.9 接收區(qū)塊信號處理 246

8.4.10 不可逆區(qū)塊信號處理 248

8.5 txn_test_gen_plugin測試TPS插件 250

8.5.1 插件的整體架構(gòu) 250

8.5.2 創(chuàng)建測試賬戶接口 251

8.5.3 啟動測試接口 256

8.5.4 終止程序接口 261

8.5.5 TPS 261

8.6 本章小結(jié) 262

本目錄推薦

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