注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络网络与数据通信区块链架构之美:从比特币、以太坊、超级账本看区块链架构设计

区块链架构之美:从比特币、以太坊、超级账本看区块链架构设计

区块链架构之美:从比特币、以太坊、超级账本看区块链架构设计

定 价:¥89.00

作 者: 何昊 著
出版社: 电子工业出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787121412653 出版时间: 2021-06-01 包装: 平装
开本: 16开 页数: 336 字数:  

内容简介

  本书由浅入深地介绍了比特币、以太坊和超级账本三个区块链平台的设计精华。除第0章导言外,全书还包含10章,按照区块链架构体系自底而上进行介绍。第1章介绍了区块链各模块所需要用到的密码学知识。第2章介绍了区块链中的P2P模块,揭示了区块链的网络结构。第3章介绍了区块链中的两种交易模型。第4章展示了如何使用Solidity编写智能合约。第5章从EVM的角度关注了智能合约的编译和执行。第6章讨论了区块链中的核心数据结构。第7章分别从公有链和联盟链两个方向介绍了二者所采用的共识算法和解决的问题。第8章围绕数字钱包技术介绍了如何生成私钥、存储私钥和保护私钥。第9章介绍了打通链上数据和链外数据的关键技术预言机。第10章从社区的角度介绍了公有链项目的标准制定流程和一些区块链标准。本书涵盖了区块链主流平台的新技术,可以帮助读者深入理解区块链的核心原理和设计思想,使读者不局限于某一平台,灵活运用区块链系统的设计思想。

作者简介

  何昊 目前就职于腾讯云区块链产品中心,高级工程师。 有多年区块链底层平台开发经验,对比特币、以太坊、超级账本等平台有深入研究。 先后参与过趣链科技Hyperchain底层平台、腾讯TBaaS、长安链等区块链平台的研发工作,曾为多家银行提供区块链技术咨询

图书目录

第0章导言
0.1 区块链技术体系分类
0.2 网络层
0.3 共识层
0.4 数据层
0.5 智能合约层
0.6 应用层
0.7 本书目的
0.8 阅读建议
0.9 勘误和支持
0.10 致谢
第1章密码学基础
1.1 基本元素
1.2 对称加密
1.3 非对称加密
1.4 混合加密
1.5 哈希算法
1.6 数字签名
1.7 可信通信
1.7.1 TLS协议
1.7.2 双向认证
1.8 ECDH密钥协商
1.9 身份验证
1.10 数字证书
1.10.1 数字证书结构
1.10.2 数字证书类型
1.10.3 数字证书编码
1.10.4 简单应用
1.11 PKI体系
1.12 证书链
1.13 可信执行环境
第2章网络层
2.1 集中式网络
2.2 纯分布式网络
2.2.1 Gossip协议
2.2.2 Gossip协议流程
2.3 混合式网络
2.4 结构化网络
2.4.1 Kademlia算法原理
2.4.2 K桶
2.4.3 K桶的更新机制
2.4.4 加入Kad网络
2.4.5 定位节点
2.4.6 以太坊中的Kad网络
2.5 RLP编码
2.5.1 RLP编码定义
2.5.2 RLP编码规则
2.6 RLPx子协议
2.7 Whisper协议
2.7.1 消息广播
2.7.2 协议流程
第3章交易模型
3.1 UTXO模型介绍
3.1.1 输入
3.1.2 输出
3.1.3 比特币脚本
3.2 账户模型
3.2.1 外部账户
3.2.2 合约账户
3.2.3 世界状态
第4章智能合约
4.1 Gas
4.1.1 Gas支付
4.1.2 Gas成本与Gas价格
4.1.3 Gas成本限制和Gas耗尽
4.1.4 Gas价格和交易优先顺序
4.1.5 区块Gas限制
4.1.6 Gas限制
4.1.7 Gas退款
4.1.8 GasToken
4.2 智能合约生命周期
4.3 以太坊高级语言简介
4.4 Remix开发环境
4.5 Solidity文件结构
4.5.1 版本标识
4.5.2 源文件导入
4.5.3 路径
4.5.4 注释
4.6 数据类型
4.6.1 变量
4.6.2 值类型
4.6.3 引用类型
4.6.4 数据位置
4.6.5 动态数组
4.6.6 映射
4.6.7 枚举
4.6.8 结构体
4.7 控制结构与表达式
4.7.1 构造函数与析构函数
4.7.2 函数参数
4.7.3 函数返回变量
4.7.4 作用域
4.7.5 函数调用
4.7.6 函数可见性
4.7.7 函数装饰器
4.7.8 回退函数
4.7.9 错误处理及异常
4.8 事件
4.8.1 监听事件
4.8.2 检索日志
4.9 合约继承
4.9.1 继承支持传递参数
4.9.2 继承中的重名
4.9.3 重写函数
4.9.4 继承父类合约方法
4.9.5 多继承与线性化
第5章深入EVM
5.1 存储
5.1.1 存储分类
5.1.2 Hex编码
5.2 智能合约的ABI
5.3 编译Solidity
5.4 ABI编码
5.4.1 状态变量
5.4.2 结构体
5.4.3 布尔类型
5.4.4 定长数组
5.4.5 映射
5.4.6 动态数组
5.4.7 动态数组打包
5.4.8 字节数组和字符串
5.4.9 函数选择器和参数编码
5.5 Solidity汇编
5.5.1 内联汇编
5.5.2 基本语法
5.5.3 操作码
5.5.4 函数风格
5.5.5 访问外部变量和函数
5.5.6 汇编局部变量声明
5.5.7 赋值
5.5.8 条件判断与循环语句
5.5.9 函数
5.5.10 注意事项
5.5.11 Solidity惯例
5.5.12 独立汇编
5.5.13 EVM中的事件与日志
5.6 跨合约调用
5.6.1 call和callcode异同
5.6.2 callcode和delegatecall异同
5.7 智能合约安全
5.7.1 合约审计
5.7.2 未来研究方向与改进思路
5.7.3 漏洞分析
第6章区块链核心数据结构
6.1 交易结构
6.1.1 AccountNonce
6.1.2 Price
6.1.3 Recipient
6.1.4 Amount
6.1.5 Payload
6.1.6 V. R. S
6.2 交易池
6.3 交易回执
6.4 区块
6.4.1 区块结构
6.4.2 区块存储
6.4.3 创世区块
6.4.4 区块广播
6.4.5 区块扩容
6.5 默克尔树与轻节点
6.5.1 默克尔树
6.5.2 轻节点
6.5.3 布隆过滤器
6.6 字典树
6.7 MPT树
6.7.1 MPT树持久化
6.7.2 安全的MPT树
6.7.3 持久化MPT树
6.7.4 MPT树应用
6.8 Bucket树
第7章共识算法
7.1 分布式系统模型
7.1.1 分布式系统中的网络模型
7.1.2 分布式系统中的故障模型
7.2 FLP和CAP定理
7.2.1 FLP定理
7.2.2 CAP定理
7.3 比特币共识
7.3.1 比特币清算
7.3.2 难度调整
7.3.3 出块时间调整
7.3.4 算法原理
7.3.5 压缩算法
7.3.6 难度计算
7.3.7 算力
7.3.8 铸币交易
7.3.9 算力单位
7.3.10 矿池收益
7.3.11 矿池
7.3.12 全网算力
7.3.13 区块确认
7.4 以太坊共识
7.4.1 Dagger
7.4.2 Hashimoto
7.4.3 Dagger-Hashimoto
7.4.4 Ethash
7.5 以太坊Ghost协议
7.6 公有链激励
7.6.1 公有链共识与激励相容
7.6.2 矿池利益分配
7.6.3 挖矿风险
7.7 联盟链共识
7.8 Raft算法
7.8.1 复制状态机
7.8.2 算法流程
7.8.3 领导者选举
7.8.4 选举流程
7.8.5 日志复制
7.8.6 领导者选举安全性
7.8.7 候选者和跟随者安全性
7.8.8 可用性
7.8.9 增删节点
7.8.10 配置变更流程
7.8.11 日志压缩
7.9 实用拜占庭容错算法
7.9.1 算法容错
7.9.2 算法流程
7.9.3 日志压缩
7.9.4 视图切换
7.9.5 主动恢复
7.9.6 增删节点
7.10 共识算法的新进展
第8章数字钱包
8.1 确定性钱包
8.2 分层确定性钱包设计
8.2.1 主密钥生成
8.2.2 HCKD函数
8.2.3 节点派生路径
8.3 助记词
8.3.1 助记词生成
8.3.2 恢复种子
8.4 硬件钱包
8.5 双离线支付
第9章预言机
9.1 预言机基本原理
9.2 预言机的起源与发展
9.2.1 可信预言机
9.2.2 奶酪模型
9.3 理想预言机
9.4 去中心化系统的弱点
9.5 去中心化预言机项目
9.5.1 ChainLink
9.5.2 Witnet
9.6 数据聚合方式
9.7 预言机面临的挑战
第10章区块链标准
10.1 比特币标准
10.1.1 BIP的需求
10.1.2 BIP的剖析
10.1.3 多种类型的BIP
10.2 以太坊标准
10.3 金融分布式账本技术安全规范
10.4 区块链服务网络

本目录推荐