图书介绍

GO语言公链开发实战PDF|Epub|txt|kindle电子书版本网盘下载

GO语言公链开发实战
  • (中国)郑东旭,杨明珠,潘盈瑜等 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111629870
  • 出版时间:2019
  • 标注页数:298页
  • 文件大小:93MB
  • 文件页数:308页
  • 主题词:电子商务-支付方式-研究

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

GO语言公链开发实战PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 公链设计架构1

1.1 概述1

1.2 公链总体架构2

1.3 比原链各模块功能2

1.3.1 用户交互层2

1.3.2 接口层4

1.3.3 内核层4

1.3.4 钱包层6

1.3.5 共识层6

1.3.6 数据存储层7

1.3.7 P2P分布式网络8

1.4 编译部署及应用9

1.5 本章小结12

第2章 交互工具13

2.1 概述13

2.2 bytomcli交互工具13

2.2.1 bytomcli命令flag参数13

2.2.2 使用bytomcli查看节点状态信息15

2.2.3 bytomcli运行案例16

2.3 dashboard交互工具21

2.3.1 使用dashboard发送一笔交易22

2.3.2 使用dashboard开启挖矿模式22

2.4 本章小结24

第3章 守护进程的初始化与运行25

3.1 概述25

3.2 bytomd守护进程初始化流程及命令参数25

3.3 bytomd守护进程的初始化实现27

3.3.1 Node对象28

3.3.2 配置初始化29

3.3.3 创建文件锁32

3.3.4 初始化网络类型33

3.3.5 初始化数据库(持久化存储)35

3.3.6 初始化交易池35

3.5.7 创建一条本地区块链36

3.3.8 初始化本地钱包37

3.3.9 初始化网络同步管理37

3.3.10 初始化Pprof性能分析工具38

3.3.11 初始化CPU挖矿功能38

3.4 bytomd守护进程的启动方式和停止方式39

3.5 本章小结40

第4章 接口层41

4.1 概述41

4.2 实现一个简易HTTP Server41

4.3 API Server创建HTTP服务42

4.3.1 创建API对象42

4.3.2 创建路由项43

4.3.3 实例化http.Server44

4.3.4 启动API Server45

4.3.5 接收并响应请求45

4.4 HTTP请求的完整生命周期47

4.5 比原链API接口描述48

4.6 API接口调用工具50

4.6.1 使用curl命令行调用API接口50

4.6.2 使用Postman调用API接口50

4.7 比原链HTTP错误码一览51

4.8 本章小结52

第5章 内核层:区块与区块链53

5.1 概述53

5.2 区块53

5.2.1 区块的数据结构53

5.2.2 区块头的数据结构54

5.2.3 区块标识符55

5.2.4 创世区块56

5.2.5 生成创世区块57

5.2.6 区块验证58

5.2.7 计算下一个区块的难度目标60

5.2.8 孤块管理60

5.3 区块链63

5.3.1 区块链的数据结构63

5.3.2 区块上链64

5.3.3 区块连接65

5.3.4 链重组66

5.3.5 主链的状态69

5.4 本章小结70

第6章 内核层:交易71

6.1 概述71

6.2 交易的概念71

6.2.1 现实生活中的交易71

6.2.2 虚拟世界中的交易72

6.3 核心数据结构72

6.3.1 普通交易核心数据结构73

6.3.2 Coinbase交易核心数据结构78

6.3.3 交易Action数据结构81

6.3.4 MUX交易类型85

6.4 BUTXO模型86

6.4.1 BUTXO模型原理87

6.4.2 MUX结构88

6.5 交易的流程89

6.5.1 构建交易89

6.5.2 签名交易93

6.5.3 提交交易95

6.6 隔离见证97

6.7 交易脚本97

6.7.1 支付到公钥98

6.7.2 支付到脚本99

6.7.3 资产上链100

6.7.4 资产销毁102

6.7.5 见证脚本102

6.7.6 栈语言103

6.8 交易验证105

6.8.1 标准交易105

6.8.2 交易验证流程106

6.9 交易费108

6.9.1 估算交易手续费108

6.9.2 计算交易手续费110

6.10 交易池111

6.1 1 默克尔树112

6.12 本章小结115

第7章 内核层:智能合约116

7.1 概述116

7.2 基础知识116

7.2.1 智能合约116

7.2.2 图灵完备的智能合约117

7.2.3 UTXO模型和Account模型117

7.3 合约层设计118

7.4 智能合约语言119

7.4.1 Equity语言119

7.4.2 Equity合约组成119

7.5 基于UTXO模型合约开发实战122

7.5.1 编写合约123

7.5.2 编译合约123

7.5.3 部署合约125

7.5.4 解锁合约129

7.6 本章小结132

第8章 内核层:虚拟机133

8.1 概述133

8.2 BVM介绍134

8.2.1 虚拟机的栈134

8.2.2 具有图灵完备性的BVM135

8.2.3 equity&vm代码结构135

8.3 virtualMachine对象136

8.4 栈实现137

8.5 BVM操作指令集139

8.6 智能合约在BVM上的运行过程141

8.6.1 智能合约数据结构141

8.6.2 合约编译流程与原理142

8.6.3 合约程序字节码示例156

8.6.4 合约程序字节码的执行157

8.6.5 合约程序字节码的执行示例159

8.7 BVM指令集160

8.8 本章小结165

第9章 钱包层166

9.1 概述166

9.2 钱包对象167

9.3 密钥管理167

9.3.1 密钥对生成169

9.3.2 密钥对生成算法170

9.3.3 密钥加密存储172

9.4 账户管理174

9.4.1 账户创建175

9.4.2 账户地址176

9.4.3 账户余额178

9.5 资产管理179

9.5.1 初始默认资产179

9.5.2 发行资产180

9.6 交易管理182

9.6.1 筛选交易182

9.6.2 筛选UTXO183

9.6.3 UTXO花费选择算法184

9.7 钱包管理186

9.7.1 数据更新186

9.7.2 备份187

9.7.3 恢复188

9.8 本章小结188

第10章 P2P分布式网络189

10.1 概述189

10.2 P2P的四种网络模型189

10.3 网络节点初始化191

10.3.1 SyncManager初始化191

10.3.2 P2P Switch初始化194

10.4 节点发现机制196

10.4.1 种子节点196

10.4.2 Kademlia算法197

10.4.3 UPnP协议203

10.4.4 RLPX网络协议205

10.5 节点发现代码实现206

10.5.1 节点发现初始化206

10.5.2 路由表实现207

10.5.3 Kademlia通信协议212

10.5.4 邻居节点发现实现212

10.6 节点状态机219

10.7 区块同步223

10.7.1 区块同步流程223

10.7.2 快速同步算法225

10.7.3 普通同步算法230

10.7.4 区块数据请求与发送231

10.8 交易同步233

10.9 快速广播235

10.9.1 新交易快速广播236

10.9.2 新区块快速广播238

10.10 节 点管理239

10.10.1 TCP连接数管理240

10.10.2 Outbound连接数管理240

10.10.3 动态节点评分机制DynamicBanScore241

10.11 本章小结245

第11章 数据存储246

11.1 概述246

11.2 为什么使用键值数据库246

11.3 LevelDB常用操作247

11.3.1 增删改查操作247

11.3.2 迭代查询248

11.3.3 按前缀查询249

11.3.4 批量操作249

11.4 存储层缓存250

11.4.1 缓存淘汰算法250

11.4.2 比原链缓存实现252

11.5 存储层持久化254

11.5.1 比原链数据库254

11.5.2 持久化存储接口255

11.5.3 持久化key数据前缀255

11.5.4 持久化存储区块过程256

11.6 Varint变长编码257

11.7 本章小结258

第12章 共识算法259

12.1 概述259

12.2 PoW和PoS259

12.3 实现一个简易PoW共识算法261

12.4 比原链PoW共识算法266

12.4.1 PoW hash值266

12.4.2 难度动态调整267

12.4.3 Tensority算法268

12.5 本章小结278

第13章 矿池及挖矿流程279

13.1 概述279

13.2 与矿池相关的基本概念279

13.3 矿池总架构280

13.4 挖矿流程解析(矿池视角)282

13.5 挖矿流程解析(矿机视角)283

13.6 拒绝数与拒绝率286

13.7 矿池的收益分配模式286

13.8 交易打包至区块287

13.8.1 Coinbase交易奖励288

13.8.2 交易手续费Gas289

13.9 矿池优化建议290

13.10 本章小结291

第14章 展望292

14.1 概述292

14.2 跨链293

14.2.1 打通链与链的连接293

14.2.2 BTC、ETH与BTM的跨链资产交换293

14.3 闪电网络294

14.4 子链295

14.5 本章小结296

热门推荐