1.1 区块链基础知识 1
1.1.1 交易 1
1.1.2 区块 4
1.1.3 链 4
1.1.4 挖矿 5
1.1.5 共识算法 6
1.1.6 分叉 7
1.1.7 攻击 8
1.2 以太坊智能合约 9
1.2.1 以太坊 9
1.2.2 EVM 12
1.2.3 智能合约 13
1.2.4 DAPP 14
1.3 简单的智能合约 15
1.3.1 示例1 16
1.3.2 示例2 17
1.4 小结 18
第2章 开发环境搭建 20
2.1 Remix的使用 20
2.1.1 编程界面 20
2.1.2 运行环境 22
2.1.3 其他设置 24
2.2 Ethereum Wallet的安装与使用 26
2.2.1 安装 26
2.2.2 部署合约 28
2.2.3 调试 32
2.2.4 Ethereum Wallet小结 38
2.3 Ganache + Truffle的安装与使用 38
2.3.1 Ganache 38
2.3.2 Truffle 40
2.3.3 安装总结 45
2.4 MetaMask的配置与使用 45
2.5 小结 47
2.6 课后练习 47
第3章 Solidity编程语法 48
3.1 Solidity前导知识 48
3.2 智能合约的基本构成 50
3.2.1 状态变量 50
3.2.2 函数 50
3.2.3 函数修饰器 50
3.2.4 事件 51
3.2.5 结构体 51
3.2.6 枚举类型 52
3.3 Solidity数据类型 52
3.3.1 值类型 53
3.3.2 引用类型 58
3.3.3 左值操作类型 65
3.3.4 类型转换原则 66
3.4 全局变量和单位 68
3.4.1 单位 68
3.4.2 全局变量和函数 69
3.5 控制逻辑与表达式 71
3.5.1 控制语句 71
3.5.2 函数调用 71
3.5.3 通过new关键字创建合约 73
3.5.4 赋值 74
3.5.5 作用范围与声明 75
3.5.6 异常处理 76
3.6 智能合约 78
3.6.1 创建合约 78
3.6.2 可见范围和getter 80
3.6.3 函数修饰符 83
3.6.4 状态常量 85
3.6.5 函数 86
3.6.6 events 91
3.6.7 继承 93
3.6.8 抽象合约 97
3.6.9 接口 98
3.6.10 库 99
3.6.11 using for 102
3.7 Solidity汇编语言 103
3.7.1 内嵌式汇编 103
3.7.2 独立汇编 109
3.8 小结 110
3.9 课后练习 110
第4章 ABI(应用程序二进制接口) 111
4.1 接口调用的基本原理 111
4.2 函数调用与参数封装 115
4.2.1 数据封装的基础知识 115
4.2.2 函数选择 116
4.2.3 参数封装 117
4.2.4 封装示例 118
4.3 ABI接口JSON描述 129
4.4 小结 132
4.5 课后练习 133
第5章 ICO、token和DAO 134
5.1 ICO是第一个爆款DAPP 134
5.1.1 被扭曲了的ICO 135
5.1.2 传统众筹与以太坊众筹 135
5.1.3 众筹的变种ICO 143
5.2 token 144
5.2.1 token的基本元素 144
5.2.2 改进token 150
5.3 ICO 158
5.4 DAO 162
5.4.1 创建DAO合约 162
5.4.2 使用DAO的方式 170
5.4.3 模拟股票监管的DAO合约 174
5.5 ICO认知误区与防骗指南 175
5.6 小结 176
5.7 课后练习 177
第6章 DAPP完整实战 178
6.1 投票 178
6.1.1 Truffle默认案例讲解 178
6.1.2 修改为投票系统 187
6.1.3 实战小结 193
6.2 誓言上链 193
6.3 区块链彩票 199
6.3.1 业务架构 199
6.3.2 业务代码实现 201
6.4 小结 219
6.5 课后练习 219
第7章 智能合约安全与公链技术简介 220
7.1 合约溢出攻击实例 220
7.2 智能合约安全漏洞与建议 224
7.2.1 合约漏洞 224
7.2.2 安全建议 226
7.3 常见的公链安全问题 227
7.3.1 双花攻击 227
7.3.2 女巫攻击 228
7.3.3 日食攻击 229
7.3.4 DDoS攻击 230
7.4 小结 230
· · · · · · (收起)
注册有任何问题请添加 微信:MVIP619 拉你进入群
打开微信扫一扫
添加客服
进入交流群
发表评论