aelf區(qū)塊鏈應(yīng)用架構(gòu)指南
定 價:99 元
- 作者:杜行舟 孟繁軻 郝玉琨 編著
- 出版時間:2020/11/1
- ISBN:9787111664338
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP311.135.9-62
- 頁碼:292
- 紙張:
- 版次:
- 開本:16開
《aelf區(qū)塊鏈應(yīng)用架構(gòu)指南》旨在引導(dǎo)區(qū)塊鏈應(yīng)用開發(fā)者,基于aelf 框架構(gòu)建可支撐商業(yè)應(yīng)用的分布式 App。內(nèi)容從分布式技術(shù)體系入手,從區(qū)塊鏈業(yè)務(wù)建模思維方法、設(shè)計原則、技術(shù)決策和原型開發(fā)的角度,以典型的存證業(yè)務(wù)及去中心、多中心治理等場景為例,對基于 aelf 技術(shù)體系的領(lǐng)域分析、架構(gòu)設(shè)計、性能及部署設(shè)計活動的工具方法進(jìn)行闡述。具體涉及 aelf 區(qū)塊鏈平臺技術(shù)體系、智能合約及跨鏈資源體系、業(yè)務(wù)系統(tǒng)性能測評以及aelf 技術(shù)生態(tài)與治理。本書在各模塊中穿插介紹了主流區(qū)塊鏈系統(tǒng)的技術(shù)原理與發(fā)展歷史,并詳細(xì)介紹了aelf 框架的技術(shù)實現(xiàn),幫助讀者從不同角度、多方面地理解區(qū)塊鏈。
《aelf區(qū)塊鏈應(yīng)用架構(gòu)指南》以“理論牽引例程,技術(shù)支撐場景”為邏輯原則,在特定技術(shù)的介紹中通過概念示意圖、業(yè)務(wù)模型圖、數(shù)據(jù)流圖等形式,結(jié)合偽代碼示例及程序運行數(shù)據(jù),指導(dǎo)區(qū)塊鏈應(yīng)用產(chǎn)品設(shè)計及DApp 軟件產(chǎn)品的全生命周期研發(fā)。
《aelf區(qū)塊鏈應(yīng)用架構(gòu)指南》的主要讀者對象為分布式技術(shù)行業(yè)從業(yè)人員(包括產(chǎn)品經(jīng)理及開發(fā)人員)、相關(guān)研究方向的高校師生等。目前,aelf 開源生態(tài)已初具規(guī)模,自aelf 框架的preview 版本發(fā)布以來,開源社區(qū)熱度激增。本書編寫過程獲得了aelf 官方團(tuán)隊的大力支持,通過豐富的技術(shù)理念和完備的例程,為aelf 區(qū)塊鏈應(yīng)用開發(fā)者的技術(shù)研發(fā)工作提供了豐富的指導(dǎo)。
目 錄
序
前言
第1 章 分布式:從多中心到去中心【入門:概念綜述】/1
1.1 傳統(tǒng)分布式架構(gòu)體系/2
1.2 基于令牌的分布式協(xié)同達(dá)成/4
1.3 現(xiàn)有主流區(qū)塊鏈系統(tǒng)的共識機(jī)制/5
1.3.1 PoW 機(jī)制/5
1.3.2 PoS/DPoS 機(jī)制/5
1.3.3 PBFT 機(jī)制/6
1.4 分布式數(shù)據(jù)存儲體系—擴(kuò)展與合并/7
1.5 aelf 解決方案的亮點/10
1.5.1 技術(shù)優(yōu)勢/10
1.5.2 應(yīng)用優(yōu)勢/12
第2 章 區(qū)塊鏈思維方法【入門:理論剖析】/14
2.1 區(qū)塊鏈技術(shù)特性:以早期方案為例/15
2.1.1 密鑰對/15
2.1.2 區(qū)塊/16
2.1.3 共識/17
2.1.4 開源閉源爭議/18
2.2 區(qū)塊鏈數(shù)據(jù)存儲—賬本與記賬模式/20
2.3 區(qū)塊鏈存證與溯源/22
2.3.1 存證、溯源的業(yè)務(wù)核心/22
2.3.2 區(qū)塊鏈的天然優(yōu)勢/23
2.4 可信區(qū)塊鏈存證業(yè)務(wù)設(shè)計:信任的技術(shù)解構(gòu)/24
2.4.1 存證有效性證明/24
2.4.2 數(shù)據(jù)與哈希/25
2.5 區(qū)塊鏈分布式業(yè)務(wù)執(zhí)行/26
2.6 多中心&去中心治理:不止于分布式存儲/28
2.6.1 分布式數(shù)據(jù)存儲/28
2.6.2 分布式業(yè)務(wù)執(zhí)行/29
2.7 業(yè)務(wù)流與資金流價值協(xié)同/30
第3 章 aelf 區(qū)塊鏈平臺架構(gòu)【進(jìn)階:行業(yè)平臺】/32
3.1 準(zhǔn)備aelf 開發(fā)環(huán)境/33
3.2 額外依賴:支持aelf 源碼、合約構(gòu)建/36
3.2.1 Windows 構(gòu)建工具/36
3.2.2 Git 安裝指引/37
3.2.3 開發(fā)框架“.NET Core SDK”安裝指引/37
3.2.4 ProtoBuf 依賴安裝指引/38
3.3 運行aelf 節(jié)點/39
3.3.1 運行單節(jié)點/39
3.3.2 運行多節(jié)點/41
3.3.3 構(gòu)建/生成并運行源碼/45
3.4 運行一條aelf 側(cè)鏈/49
3.5 aelf 地址系統(tǒng)/51
3.6 aelf 交易/52
3.7 aelf 區(qū)塊架構(gòu)/53
3.8 aelf 提供的Web API 說明/54
3.8.1 Blockchain 類API/55
3.8.2 反序列化類API/64
3.8.3 Net 類API/65
3.8.4 Web API 數(shù)據(jù)類型定義/67
第4 章 aelf 構(gòu)建分布式原型平臺【進(jìn)階:行業(yè)實例】/76
4.1 區(qū)塊鏈瀏覽器API/77
4.1.1 區(qū)塊瀏覽類API/77
4.1.2 交易瀏覽類API/80
4.1.3 TPS 性能記錄API/83
4.2 aelf 命令行工具/85
4.2.1 命令行工具介紹/85
4.2.2 選項詳細(xì)介紹/90
4.2.3 命令詳細(xì)介紹/92
4.2.4 關(guān)于aelf-bridge/107
4.3 通過SDK 構(gòu)建與aelf 交互的DApp/112
4.3.1 SDK 典型調(diào)用例程/113
4.3.2 SDK 對Web API 的調(diào)用/115
4.3.3 SDK 中的AElf.wallet 交互/122
4.3.4 SDK 的其他細(xì)節(jié)/124
4.4 一個可供參考的示例項目/125
4.4.1 定義業(yè)務(wù)模型/125
4.4.2 業(yè)務(wù)交易簽名與發(fā)起/128
4.4.3 交易數(shù)據(jù)檢索/131
第5 章 aelf 智能合約系統(tǒng)【高級:領(lǐng)域分析】/133
5.1 智能合約業(yè)務(wù)與鑒權(quán)/134
5.1.1 架構(gòu)/134
5.1.2 編寫與部署/135
5.1.3 調(diào)用/137
5.1.4 執(zhí)行與校驗/137
5.1.5 常見問題/141
5.2 aelf 智能合約架構(gòu)/144
5.2.1 架構(gòu)總覽/144
5.2.2 鏈交互/145
5.2.3 運行時環(huán)境與執(zhí)行/148
5.2.4 SDK/149
5.2.5 服務(wù)/149
5.2.6 事件/150
5.2.7 消息/151
5.3 開發(fā)部署aelf 合約/151
5.3.1 配置腳手架/152
5.3.2 第一個合約:實現(xiàn)/155
5.3.3 第一個合約:測試/164
5.3.4 第一個合約:部署/169
5.3.5 第一個合約:前端/171
5.3.6 合約上下文/175
5.3.7 內(nèi)聯(lián)合約調(diào)用/178
5.4 aelf 合約標(biāo)準(zhǔn)(ACS):多業(yè)務(wù)域資源隔離/182
5.4.1 ACS0:創(chuàng)世合約/183
5.4.2 ACS1:手續(xù)費信息/184
5.4.3 ACS2:并行資源信息/184
5.4.4 ACS3:提案與審批/184
5.4.5 ACS4:共識機(jī)制/185
5.4.6 ACS5:方法調(diào)用閾值/186
5.4.7 ACS6:隨機(jī)數(shù)生成器/186
5.4.8 ACS7:跨鏈/186
5.4.9 ACS8:合約費用/187
5.5 C# 合約SDK/187
5.5.1 CSharpSmartContractContext/187
5.5.2 CSharpSmartContract/191
5.6 要求和限制/192
5.6.1 項目要求/192
5.6.2 架構(gòu)限制與要求/193
5.6.3 命名空間與類型限制/197
5.6.4 其他限制/200
第6 章 aelf 跨鏈資源體系【高級:領(lǐng)域架構(gòu)】/201
6.1 跨鏈交互:組織級價值分配/202
6.1.1 為什么需要跨鏈/202
6.1.2 跨鏈面臨的問題/205
6.2 跨鏈原理與方案:分配設(shè)計/206
6.2.1 比特幣框架的HTLC 方案/206
6.2.2 BTC Relay 方案與默克爾證明/208
6.3 aelf 跨鏈實現(xiàn):分布式資源動態(tài)協(xié)同/210
6.3.1 設(shè)計思路/211
6.3.2 架構(gòu)/211
6.3.3 數(shù)據(jù)流/213
6.3.4 跨鏈驗證/214
6.4 部署aelf 側(cè)鏈/215
6.4.1 編輯配置文件/216
6.4.2 啟動主鏈節(jié)點/219
6.4.3 創(chuàng)建側(cè)鏈提案/219
6.4.4 啟動側(cè)鏈節(jié)點/228
6.5 aelf 跨鏈價值分配的設(shè)計/228
6.5.1 跨鏈價值傳輸/228
6.5.2 創(chuàng)建轉(zhuǎn)賬/229
6.5.3 在目標(biāo)鏈上接收轉(zhuǎn)賬/229
6.5.4 跨鏈驗證交易/230
第7 章 aelf 系統(tǒng)優(yōu)化與云部署【高級:性能設(shè)計】/233
7.1 aelf 操作系統(tǒng)與內(nèi)核:面向底層瓶頸/234
7.2 基于aelf 的業(yè)務(wù)設(shè)計思路/235
7.3 aelf 集群化測評:打造高性能分布式系統(tǒng)/236
7.3.1 測評設(shè)計/237
7.3.2 測評場景定義/239
7.3.3 測評環(huán)境搭建與部署/240
7.3.4 測評結(jié)果/242
7.3.5 測評結(jié)論/246
7.4 aelf 開源貢獻(xiàn)與DevOps/246
7.4.1 aelf 開源項目開發(fā)/246
7.4.2 aelf 發(fā)布、測試及運行監(jiān)控/247
7.5 在云上運行aelf 節(jié)點/248
7.6 使用aelf 提供的瀏覽器擴(kuò)展插件/251
7.6.1 擴(kuò)展插件安裝、數(shù)據(jù)格式及檢查/251
7.6.2 擴(kuò)展插件的典型業(yè)務(wù)例程/253
7.6.3 擴(kuò)展插件開發(fā)者的其他操作/261
7.7 加入aelf 測試網(wǎng)指引/261
第8 章 aelf 技術(shù)生態(tài)與治理【突破:場景理念】/269
8.1 aelf 經(jīng)濟(jì)系統(tǒng):價值與流轉(zhuǎn)/270
8.1.1 經(jīng)濟(jì)系統(tǒng)中的角色/270
8.1.2 代幣模型/270
8.1.3 激勵模型/271
8.2 aelf 共識機(jī)制:分布式協(xié)同/271
8.2.1 任期/273
8.2.2 輪/273
8.2.3 時間槽/273
8.2.4 規(guī)則/274
8.3 跨鏈經(jīng)濟(jì)系統(tǒng):跨業(yè)務(wù)域資源索引/274
8.3.1 業(yè)務(wù)邏輯/274
8.3.2 技術(shù)實現(xiàn)/275
8.4 側(cè)鏈經(jīng)濟(jì)模型:價值數(shù)據(jù)流轉(zhuǎn)/275
8.4.1 創(chuàng)建請求/275
8.4.2 獨占和共享/276
8.4.3 索引手續(xù)費/277
8.5 已定義的資源系統(tǒng)/277
8.6 技術(shù)治理體系/277
8.6.1 ACS3 與提案/277
8.6.2 協(xié)會、全民公投和議會/278__