计算机
类型
可以朗读
语音朗读
143千字
字数
2019-01-01
发行日期
展开全部
主编推荐语
通俗讲解理论知识,详细实操DApp开发。
内容简介
本书将会以通俗的方式去讲解必要的理论方面的知识点,过多的无必要去谈论的理论知识点,本书不会谈及。此外,对于技术实现的方面的,将会把每个点串起来实现我们书中的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 小结
- 第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 小结
- 第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”访问智能合约函数
- 第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 小结
- 后记
展开全部
出版方
清华大学出版社
清华大学出版社成立于1980年6月,是由教育部主管、清华大学主办的综合出版单位。植根于“清华”这座久负盛名的高等学府,秉承清华人“自强不息,厚德载物”的人文精神,清华大学出版社在短短二十多年的时间里,迅速成长起来。清华大学出版社始终坚持弘扬科技文化产业、服务科教兴国战略的出版方向,把出版高等学校教学用书和科技图书作为主要任务,并为促进学术交流、繁荣出版事业设立了多项出版基金,逐渐形成了以出版高水平的教材和学术专著为主的鲜明特色,在教育出版领域树立了强势品牌。