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

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

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

定 價(jià):¥69.00

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

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787121369285 出版時(shí)間: 2019-06-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 276 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

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

作者簡(jiǎn)介

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

圖書(shū)目錄

第1章 加密算法 1

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

1.2 對(duì)稱加密 2

1.3 非對(duì)稱加密 3

1.4 本章小結(jié) 3

第2章 啟動(dòng)單節(jié)點(diǎn)EOS鏈 4

2.1 源代碼結(jié)構(gòu) 4

2.2 編譯工程 4

2.2.1 腳本eosio_build.sh 5

2.2.2 常見(jiàn)錯(cuò)誤 6

2.3 安裝命令 6

2.4 啟動(dòng)nodeos 7

2.4.1 nodeos命令詳解 7

2.4.2 啟動(dòng)一個(gè)獨(dú)立節(jié)點(diǎn) 8

2.4.3 RPC API 10

2.5 錢(qián)包服務(wù)keosd 11

2.6 Docker啟動(dòng) 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 錢(qián)包操作 25

3.8.1 創(chuàng)建錢(qián)包 25

3.8.2 導(dǎo)入私鑰 26

3.8.3 創(chuàng)建密鑰 26

3.8.4 列舉錢(qián)包 27

3.8.5 查看私鑰 27

3.9 sign命令 27

3.10 push命令 28

3.11 multisig命令 28

3.11.1 準(zhǔn)備環(huán)境 28

3.11.2 準(zhǔn)備賬戶 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 超級(jí)權(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 買(mǎi)賣(mài)內(nèi)存資源 50

4.4 公鏈啟動(dòng)重點(diǎn)步驟 51

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

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

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

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

4.4.5 查看賬戶資源 56

4.4.6 為候選人投票 56

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

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

4.5.1 查看出塊計(jì)劃 58

4.5.2 處理eosio賬戶 59

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

4.5.4 處理system合約 60

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

4.6.1 初始節(jié)點(diǎn)準(zhǔn)備 61

4.6.2 連接多機(jī)多節(jié)點(diǎn) 62

4.7 本章小結(jié) 63

第5章 源代碼調(diào)試入門(mén) 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 啟動(dòng)插件 72

5.2.5 執(zhí)行插件 74

5.2.6 斷開(kāi)和異常處理 75

5.3 調(diào)試cleos創(chuàng)建賬戶 75

5.3.1 入口main函數(shù) 75

5.3.2 get info熱身 76

5.3.3 開(kāi)始調(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日志庫(kù) 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)庫(kù) 101

6.2.1 并發(fā)訪問(wèn) 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對(duì)比 114

6.3 controller控制器 114

6.3.1 控制器概覽 114

6.3.2 控制器的信號(hào) 118

6.3.3 控制器實(shí)現(xiàn)概覽 123

6.3.4 待確認(rèn)庫(kù)/分叉庫(kù) 124

6.3.5 快照技術(shù) 130

6.4 本章小結(jié) 136

第7章 智能合約 137

7.1 簡(jiǎn)介 137

7.2 合約開(kāi)發(fā)工具集 138

7.2.1 安裝cdt 138

7.2.2 編譯合約 139

7.2.3 部署合約 139

7.2.4 執(zhí)行合約動(dòng)作 140

7.2.5 編寫(xiě)合約 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é)點(diǎn) 150

7.4.3 系統(tǒng)合約管理出塊 153

7.4.4 初始化主幣 155

7.4.5 非常規(guī)賬戶競(jìng)拍 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 異步讀寫(xiě) 164

8.1.4 API插件的生命周期 166

8.1.5 結(jié)構(gòu)體成員序列化 166

8.1.6 chain插件生命周期 167

8.1.7 RPC接口實(shí)現(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請(qǐng)求 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 倒計(jì)時(shí)器 224

8.3.9 循環(huán)計(jì)劃出塊 226

8.3.10 校驗(yàn)生產(chǎn)區(qū)塊 229

8.3.11 生產(chǎn)區(qū)塊 230

8.3.12 啟動(dòng)出塊管理 231

8.4 mongo_db_plugin狀態(tài)持久化 232

8.4.1 生命周期 233

8.4.2 信號(hào)管理 236

8.4.3 隊(duì)列 237

8.4.4 擦除數(shù)據(jù)庫(kù) 238

8.4.5 初始化插件 239

8.4.6 區(qū)塊消費(fèi) 241

8.4.7 接收事務(wù)信號(hào)處理 243

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

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

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

8.5 txn_test_gen_plugin測(cè)試TPS插件 250

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

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

8.5.3 啟動(dòng)測(cè)試接口 256

8.5.4 終止程序接口 261

8.5.5 TPS 261

8.6 本章小結(jié) 262

本目錄推薦

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