《深入理解以太坊》PDF电子书免费下载

作者:  王欣 史钦锋 程杰

出版社: 机械工业出版社

出版年: 2019年07月

ISBN: 9787111614920

~~滚到底部有网盘下载链接~~

内容简介

目录

前言
第1章 以太坊概述 1
1.1 区块链起源 1
1.2 以太坊发展之路 3
1.3 以太坊核心技术 6
1.3.1 智能合约 6
1.3.2 PoS 7
1.4 以太坊系统架构 8
1.5 以太坊社区 9
1.6 以太坊路线图 10
1.7 本章小结 11
第2章 设计理念 12
2.1 密码学 13
2.1.1 Hash 13
2.1.2 椭圆曲线的加解密 18
2.1.3 签名 20
2.1.4 Merkle树和验证 24
2.1.5 MPT状态树 24
2.2 共识问题 28
2.2.1 分布式一致性问题 28
2.2.2 Paxos 和Rfat 30
2.2.3 拜占庭容错及PBFT 31
2.2.4 以太坊IBFT共识 33
2.2.5 PoW 35
2.2.6 Casper 36
2.2.7 以太坊性能 38
2.3 图灵完备 40
2.3.1 比特币脚本 41
2.3.2 EVM虚拟机 44
2.3.3 Gas机制 46
2.4 本章小结 49
第3章 技术架构 50
3.1 分层设计 51
3.1.1 应用层 51
3.1.2 合约层 54
3.1.3 激励层 55
3.1.4 共识层 56
3.1.5 网络层 59
3.1.6 数据层 60
3.2 数据结构设计 62
3.2.1 交易 62
3.2.2 状态树 65
3.2.3 区块 67
3.2.4 区块链 71
3.2.5 数据库 72
3.3 P2P网络 76
3.3.1 节点发现 76
3.3.2 节点管理 78
3.4 客户端 84
3.4.1 RPC 85
3.4.2 web3 88
3.5 本章小结 89
第4章 共识算法 90
4.1 PoW 90
4.1.1 算法概述 90
4.1.2 设计实现 93
4.1.3 优缺点分析 96
4.2 PoA 97
4.2.1 算法概述 97
4.2.2 设计实现 99
4.2.3 优缺点分析 102
4.3 PoS 103
4.3.1 算法概述 103
4.3.2 优缺点分析 111
4.4 本章小结 112
第5章 智能合约开发 113
5.1 智能合约的诞生 113
5.2 以太坊上的智能合约 114
5.2.1 以太坊智能合约概述 114
5.2.2 关于智能合约的理解误区 114
5.2.3 合约账户 115
5.2.4 智能合约举例 116
5.2.5 智能合约在以太坊上的运行流程 118
5.3 智能合约编程语言 119
5.4 智能合约应用开发 120
5.4.1 连接和访问以太坊 120
5.4.2 以太坊集成开发环境remix 120
5.4.3 truffle 126
5.4.4 智能合约编译器solc 129
5.5 solidity语法详解 130
5.5.1 智能合约源文件 130
5.5.2 solidity数据类型 132
5.5.3 智能合约的内建全局变量和函数 141
5.5.4 智能合约中的单位 143
5.5.5 solidity表达式和控制结构 144
5.5.6 函数 148
5.5.7 常量状态变量 152
5.5.8 智能合约的事件 153
5.5.9 智能合约的继承性 153
5.5.10 智能合约的创建 154
5.5.11 智能合约的销毁 154
5.6 solidity编程规范 155
5.6.1 代码布局 155
5.6.2 编码约定 157
5.6.3 命名约定 159
5.7 本章小结 159
第6章 智能合约运行机制 160
6.1 调用智能合约函数 160
6.1.1 外部调用 161
6.1.2 内部调用 162
6.2 以太坊ABI协议 163
6.2.1 ABI接口定义 164
6.2.2 函数选择器 165
6.2.3 参数编码 165
6.2.4 abi编码举例 166
6.3 交易的费用和计算 167
6.3.1 什么是Gas机制 167
6.3.2 为什么需要Gas机制 168
6.3.3 交易费用计算法方法 169
6.3.4 交易费用的组成 170
6.4 智能合约的事件 170
6.4.1 事件的存储和解析 170
6.4.2 Logs的底层接口 173
6.4.3 事件的查询 174
6.4.4 事件查询过程 174
6.5 库和链接原理 175
6.5.1 库的定义 175
6.5.2 库的使用 175
6.5.3 库的连接 176
6.5.4 库中的事件 176
6.6 智能合约元数据 177
6.7 智能合约安全性分析 179
6.7.1 智能合约中的陷阱 179
6.7.2 建议 182
6.7.3 案例分析:资金回退流程 183
6.8 智能合约和外界的通信 184
6.8.1 oracle介绍 184
6.8.2 oracle需要解决的问题 185
6.8.3 数据商店 185
6.9 智能合约的动态升级 185
6.9.1 solidity是一个受限的语言 185
6.9.2 动态升级的实现 186
6.10 智能合约的数据存储 187
6.10.1 存储 187
6.10.2 内存 187
6.10.3 栈 188
6.11 本章小结 188
第7章 智能合约字节码与汇编 189
7.1 智能合约汇编指令集 189
7.2 智能合约字节码解析 192
7.3 状态变量的存储 196
7.3.1 普通状态变量的存储 196
7.3.2 动态数据的storage存储 198
7.3.3 总结 201
7.4 solidity内嵌汇编 201
7.4.1 内嵌汇编指令 201
7.4.2 单独使用汇编指令 203
7.5 本章小结 204
第8章 开发者工具 205
8.1 MetaMask 205
8.1.1 MetaMask安装 205
8.1.2 MetaMask作为Web钱包 206
8.1.3 MetaMask作为DApp客户端 207
8.2 以太坊测试网络 209
8.2.1 Morden 209
8.2.2 Ropsten 210
8.2.3 Kovan 210
8.2.4 Rinkeby 211
8.2.5 本地以太坊私链 212
8.2.6 连接测试网络 213
8.3 Remix 213
8.3.1 本地安装Remix 213
8.3.2 在线Remix 214
8.4 truffle 217
8.4.1 安装truffle 218
8.4.2 构建应用项目 218
8.4.3 demo合约实践 220
8.4.4 智能合约测试和验证 222
8.5 myetherwall
显示部分信息

下载价格:免费
立即下载
登入/注册
知识就是力量
没有账号? 忘记密码?