區塊鏈DApp開發:基于以太坊和比特幣公鏈 版權信息
- ISBN:9787302563952
- 條形碼:9787302563952 ; 978-7-302-56395-2
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>>
區塊鏈DApp開發:基于以太坊和比特幣公鏈 本書特色
本書重點介紹了以下內容:
區塊鏈的整體基礎知識,包括區塊鏈的基本概念及其組成模塊,比如鏈的分叉與共識算法的實現種類等。
區塊鏈公鏈之以太坊技術與應用,包括以太坊以及DApp的概念,區塊的組成結構、錢包地址的生成、油費的計算方式、叔塊的相關規則、交易的生命周期以及應用***樹實現賬戶模型。除了基礎知識外,還有進階學習所涉及的智能合約開發、開發合約工具的介紹、節點鏈接與測試幣的獲取以及RPC接口調用等知識。此外,還有一些開發實操中需要注意的特殊知識點,比如余額查詢的區塊隔離性及零地址的含義等。在以太坊部分的*后章節中,綜合所有的知識點,通過編碼實現了以太坊DApp技術開發中的核心組件—以太坊中繼應用。
區塊鏈DApp開發:基于以太坊和比特幣公鏈 內容簡介
本書以Go編程語言為例,從必要的理論知識到編碼實踐,循序漸進地介紹了當前區塊鏈兩大公鏈應用—以太坊和比特幣DApp開發的技術要點。全書共分為7章,第1章介紹區塊鏈的重要基礎知識;第2章介紹以太坊公鏈的基礎知識,內容包含但不限于以太坊的大量概念與術語;第3章介紹以太坊智能合約的開發與部署實踐;第4章和第5章以以太坊DApp中繼服務作為范例,介紹以太坊區塊鏈DApp的開發流程;第6章介紹比特幣公鏈的基礎技術;*后的第7章介紹基于比特幣公鏈的DApp開發實例,包括錢包和交易所應用中的內存池解析器與去中心化數據存儲系統的開發。 本書技術先進,注重實踐,代碼注釋詳盡,適合廣大IT技術開發者閱讀,對于想了解以太坊和比特幣DApp開發技術的開發者尤為合適。
區塊鏈DApp開發:基于以太坊和比特幣公鏈 目錄
第1章 區塊鏈基礎知識
1.1 認識區塊鏈
1.1.1 區塊鏈的概念
1.1.2 鏈的分類
1.1.3 區塊鏈能做什么
1.2 共識的作用
1.3 常見的共識算法
1.3.1 PoW算法
1.3.2 PoS算法
1.3.3 DPoS算法
1.3.4 共識算法的編碼實現
1.4 鏈的分叉
1.4.1 軟分叉
1.4.2 硬分叉
1.4.3 常見的分叉情況
1.4.4 PoW共識機制的51%算力攻擊
1.5 小結
第2章 以太坊基礎知識
2.1 什么是以太坊
2.2 以太坊的架構
2.3 什么是DApp
2.3.1 DApp概述
2.3.2 以太坊上的DApp
2.4 區塊的組成
2.4.1 區塊的定義
2.4.2 以太坊地址(錢包地址)
2.4.3 Nonce的作用
2.4.4 燃料費
2.4.5 GasUsed的計算
2.4.6 叔塊
2.4.7 挖礦獎勵
2.5 賬戶模型
2.5.1 比特幣UTXO模型
2.5.2 Trie樹
2.5.3 Patricia Trie樹
2.5.4 默克爾樹(Merkle Tree)
2.5.5 以太坊MPT樹
2.5.6 MPT樹節點存儲到數據庫
2.5.7 組建一棵MPT樹
2.5.8 MPT樹如何體現默克爾樹的驗證特點
2.5.9 以太坊錢包地址存儲余額的方式
2.5.10 余額查詢的區塊隔離性
2.5.11 余額的查詢順序
2.5.12 UTXO模型和Account模型的對比
2.6 以太坊的版本演變
2.6.1 以太坊與PoW共識機制
2.6.2 君士坦丁堡
2.7 以太坊Ghost協議
2.8 Casper:PoS的變種共識機制
2.8.1 如何成為驗證人
2.8.2 驗證人如何獲取保證金
2.8.3 候選區塊的產生
2.8.4 勝出區塊的判斷
2.9 智能合約
2.9.1 簡介與作用
2.9.2 合約標準
2.10 以太坊交易
2.10.1 交易的發起者、類型及發起交易的函數
2.10.2 交易和智能合約的關系
2.10.3 交易參數的說明
2.10.4 交易方法的真實含義
2.10.5 交易的狀態
2.10.6 交易的打包
2.11 “代幣”余額
2.12 以太坊瀏覽器
2.12.1 區塊鏈瀏覽器訪問合約函數
2.12.2 區塊鏈瀏覽器查看交易記錄
2.12.3 非ETH交易記錄不能作為資產轉賬成功的依據
2.12.4 區塊鏈瀏覽器查看智能合約的代碼
2.13 以太坊零地址
2.13.1 零地址的交易轉出假象
2.13.2 零地址的意義
2.14.1 核心組件
2.14.2 共識的流程
2.14.3 嚴謹的隨機選擇
2.15 小結
第3章 智能合約的編寫、發布和調用
3.1 智能合約與以太坊DApp
3.2 認識Remix
3.3 實現加法程序
3.4 實現ERC20代幣智能合約
3.4.1 定義標準變量
3.4.2 事件與構造函數
3.4.3 Solidity的常見關鍵字
3.4.4 授權與余額
3.4.5 轉賬函數
3.4.6 合約的代碼安全
3.5 鏈上的合約
3.6 認識Mist
3.6.1 節點的切換
3.6.2 區塊的同步方式
3.7 創建以太坊錢包
3.8 使用Mist轉賬代幣
3.9 使用Mist發布智能合約
3.9.1 合約Solidity源碼
3.9.2 認識ABI
3.9.3 提取ABI和Bytecode
3.9.4 使用Bytecode發布合約
3.9.5 使用合約的函數
3.10 Mist的替換品 MyCrypto
3.10.1 安裝MyCrypto
3.10.2 切換節點網絡
3.10.3 使用MyCrypto創建錢包
3.10.4 使用MyCrypto轉賬代幣
3.10.5 使用MyCrypto部署智能合約
3.11 小結
第4章 以太坊中繼基礎接口
4.1 認識以太坊中繼
4.2 區塊遍歷
4.3 RPC接口
4.4 以太坊接口
4.4.1 重要接口詳解
4.4.2 節點鏈接
4.4.3 獲取鏈接
4.4.4 進行測試
4.4.5 獲取測試幣
4.5 項目準備
4.6 創建項目
4.7 **個Go程序
4.8 封裝RPC客戶端
4.8.1 下載依賴庫
4.8.2 編寫RPC客戶端
4.8.3 單元測試
4.9 編寫訪問接口代碼
4.9.1 認識Call函數
4.9.2 查找請求的參數
4.9.3 實現獲取交易信息
4.9.4 認識BatchCall函數
4.9.5 批量獲取交易信息
4.9.6 批量獲取代幣余額
4.9.7 獲取*新區塊號
4.9.8 根據區塊號獲取區塊信息
4.9.9 根據區塊哈希值獲取區塊信息
4.9.10 使用eth_call訪問智能合約函數
4.10 小結
第5章 中繼服務程序的開發
5.1 創建以太坊錢包
5.1.1 以太坊錢包術語
5.1.2 創建錢包
5.2 實現以太坊交易
5.2.1 以太坊交易的原理
5.2.2 以太坊ETH的交易
5.3 區塊事件監聽
5.3.1 創建數據庫
5.3.2 實現數據庫的連接器
5.3.3 生成數據表
5.3.4 區塊遍歷器
5.3.5 理解監聽區塊事件
5.4 小結
第6章 比特幣技術基礎
6.1 比特幣的架構
6.2 獎勵機制
6.3 再看 PoW 共識
6.3.1 比特幣區塊頭
6.3.2 比特幣PoW的源碼實現
6.3.3 比特幣難度值的計算
6.4 地址的格式
6.4.1 私鑰
6.4.2 公鑰
6.4.3 地址
6.5 比特幣虛擬機
6.5.1 虛擬機的特點
6.5.2 數據源
6.5.3 常見的操作碼
6.5.4 虛擬機源碼解析
6.6 再看UTXO
6.6.1 輸入轉換
6.6.2 交易的結構
6.6.3 統計余額
6.6.4 構建交易
6.7 驗簽過程
6.8 比特幣鎖定腳本
6.8.1 P2PKH
6.8.2 P2PK
6.8.3 P2SH
6.8.4 P2WPKH與P2WSH
6.9 小結
第7章 基于比特幣公鏈的DApp案例
7.1 搭建比特幣私有鏈
7.1.1 下載節點源碼
7.1.2 目錄結構
7.1.3 配置文件
7.1.4 啟動比特幣節點
7.1.5 啟動終端控制程序
7.1.6 創建比特幣錢包
7.1.7 導出或導入錢包私鑰
7.1.8 主網的挖礦操作
7.1.9 私有網絡挖礦
7.1.10 獲得挖礦獎勵
7.1.11 發送交易
7.2 OP_RETURN與智能合約
7.2.1 公鏈存儲數據的需求
7.2.2 比特幣的存儲數據之法
7.2.3 智能合約方案—OP_RETURN
7.2.4 代碼實現含有OP_RETURN的交易
7.2.5 發送OP_RETURN交易
7.2.6 解碼默認的OP_RETURN
7.2.7 OP_RETURN數據的利用
7.3 比特幣的常用RPC接口
7.3.1 重要接口介紹
7.3.2 獲取節點連接
7.3.3 獲取測試幣
7.3.4 編寫訪問RPC接口代碼
7.4 案例:實現獲取交易狀態的解析器
7.4.1 相關程序組件
7.4.2 流程設計
7.4.3 用鏈表實現隊列功能
7.4.4 實現解析器
7.4.5 啟動解析器
7.5 案例:構建去中心化數據存儲系統
7.5.1 比特幣區塊遍歷器的實現流程
7.5.2 創建數據庫
7.5.3 區塊遍歷器的代碼實現
7.5.4 把交易發送到本地節點
7.5.5 把數據存儲到鏈上
7.5.6 解析所存儲的數據
7.6 小結
展開全部
區塊鏈DApp開發:基于以太坊和比特幣公鏈 作者簡介
林冠宏,網名:指尖下的幽靈。全棧開發者,擁有多年C/S雙端開發經驗,擅長于使用Java語言開發Android應用與Go語言開發后端程序。技術布道者,長期編寫技術博文與造輪開源,同時也是多個知名技術社區的簽約作家。曾任職中心化交易所高級開發工程師與區塊鏈公司技術經理,現任某國際知名區塊鏈通證打賞工具的核心開發。對區塊鏈技術,特別是基于以太坊與比特幣公鏈的DApp開發擁有較豐富的經驗。