-
内容大纲
以太坊打开了通向去中心化计算的大门,在这个平台上,你可以运行去中心化的应用程序(DApp)和智能合约。这些应用程序没有中心故障点或控制点,它们与支付网络集成,并在开放的区块链上运行。通过这本实用指南,你将了解在以太坊和其他基于虚拟机的区块链上构建智能合约和DApp所需的一切信息。
为什么IBM、微软、纳斯达克等数百个组织都在尝试以太坊?这本必不可少的指南向你展示了成为这个不断发展和令人兴奋的新兴行业中的创新者所需的技能:
运行以太坊客户端,创建和传输交易,编写智能合约。
了解公钥加密、哈希的基本要素和数字签名。
了解“钱包”如何保存用来操纵以太币和智能合约的数字私钥。
使用JavaScript库和远程过程调用接口,以编程方式与以太坊客户端交互。
了解安全实践、设计模式和反模式,了解现实世界的例子。
创建代表资产、股份、投票权或访问控制权的代币。
使用多个P2P组件构建去中心化应用程序。 -
作者介绍
-
目录
前言
术语速查
第1章 什么是以太坊?
以太坊与比特币的比较
区块链的组件
以太坊的诞生
以太坊的四个开发阶段
以太坊:一个通用目的的区块链
以太坊的组件
以太坊和图灵完备
从通用目的的区块链到DApp
互联网的第三次浪潮
以太坊的开发文化
为什么要学习以太坊?
这本书将会教你什么内容?
第2章 以太坊基本概念
以太币的货币单位
选择以太坊钱包
控制和责任
MetaMask入门
世界计算机简介
外部账户和合约账户
一个简单的智能合约:Faucet
编译Faucet合约
在区块链上创建合约
与合约进行交互
总结
第3章 以太坊客户端
以太坊网络
运行以太坊客户端
以太坊区块链数据的首次同步
远程调用以太坊客户端
总结
第4章 以太坊背后的密码学
密钥和地址
公钥密码学和加密货币
私钥
公钥
密码学哈希函数
以太坊地址
总结
第5章 钱包
钱包技术概述
钱包的最佳实践
总结
第6章 交易
交易的结构
交易的随机数
交易的gas
交易的接收方
交易中的以太币和数据
特殊交易:合约创建
数字签名
签名的前缀值(v)和公钥恢复
离线签名
交易的传播
记录在区块链上
多签名交易
总结
第7章 智能合约与Solidity
什么是智能合约?
智能合约的生命周期
以太坊高级编程语言
使用Solidity编写智能合约
以太坊合约的应用程序二进制接口
使用Solidity进行编程
与gas有关的注意事项
总结
第8章 智能合约与Vyper
合约的常见漏洞和Vyper
与Solidity的比较
装饰器
函数和变量顺序
编译
在编译器层面防止溢出错误
读取数据
总结
第9章 智能合约安全
安全最佳实践
安全风险和反模式
重入
算术溢出
意外的以太币
DELEGATECALL
默认的可见性
无序错觉
外部合约引用
短地址/参数攻击
未检查的调用返回值
竞争条件/预先交易
拒绝服务
区块时间戳操纵
小心使用构造函数
未初始化的存储指针
浮点数和精度
Tx.Origin验证
合约程序库
总结
第10章 代币
代币有哪些使用方式?
代币和可替代性
对手方风险
代币和内在性
使用代币:工具型代币还是权益型代币?
以太坊的代币
代币标准
代币接口标准的扩展
代币和ICO
总结
第11章 预言机
为什么需要预言机?
预言机的应用场景和示例
预言机的设计模式
数据认证
计算性的预言机
去中心化预言机
Solidity中的预言机客户端接口
总结
第12章 去中心化应用
什么是DApp?
一个基本的DApp示例:拍卖DApp
拍卖DApp的进一步去中心化
使用Swarm进行数据存储
以太坊名称服务
从普通应用到去中心化应用
总结
第13章 以太坊虚拟机
什么是EVM?
图灵完备和gas
gas
总结
第14章 共识
基于工作量证明的共识机制
基于权益证明的共识机制
Ethash:以太坊的PoW算法
Casper:以太坊的PoS算法
共识的原则
争议和竞争
总结
附录A 以太坊的分叉历史
附录B 以太坊标准
附录C EVM操作码和对应的gas开销
附录D 开发工具、框架和类库
附录E web3.js教程
同类热销排行榜
[an error occurred while processing this directive]推荐书目
-
孩子你慢慢来/人生三书 华人世界率性犀利的一枝笔,龙应台独家授权《孩子你慢慢来》20周年经典新版。她的《...
-
时间简史(插图版) 相对论、黑洞、弯曲空间……这些词给我们的感觉是艰深、晦涩、难以理解而且与我们的...
-
本质(精) 改革开放40年,恰如一部四部曲的年代大戏。技术突变、产品迭代、产业升级、资本对接...