EOS实战与源码分析

EOS实战与源码分析

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

本书深度剖析EOS源代码,填补知识空白,立体地探讨区块链技术,全面了解EOS区块链。

内容简介

本书通过EOS源代码分析揣摩设计思路、原理,找准一条技术路线,填充EOS知识空白,多条路线最终交织在一起就构成了一幅知识图,这是一个一维变二维的过程,至于如何从二维变三维,就需要结合多重学科知识,如金融学、社会学、历史学等,立体地深入分析区块链技术,结合EOS.IO/eos开源源代码阅读本书效果更佳。本书总共分为8章:加密算法、启动单节点EOS链、终端交互命令cleos、构建公链网络、源代码调试入门、数据持久化、智能合约、插件系统源代码解析。希望通过阅读本书能够更加深入地了解EOS区块链。

章节目录

封面

版权页

前言

目录

第1章 加密算法

1.1 单向哈希函数

1.2 对称加密

1.3 非对称加密

1.4 本章小结

第2章 启动单节点EOS链

2.1 源代码结构

2.2 编译工程

2.2.1 脚本eosio_build.sh

2.2.2 常见错误

2.3 安装命令

2.4 启动nodeos

2.4.1 nodeos命令详解

2.4.2 启动一个独立节点

2.4.3 RPC API

2.5 钱包服务keosd

2.6 Docker启动

2.7 本章小结

第3章 终端交互命令cleos

3.1 cleos命令概述

3.2 create命令

3.3 convert脚本命令

3.3.1 打包事务

3.3.2 解包事务

3.3.3 打包action数据

3.4 get命令

3.5 set命令

3.5.1 设置账户权限

3.5.2 设置action权限

3.6 transfer命令

3.7 net命令

3.8 钱包操作

3.8.1 创建钱包

3.8.2 导入私钥

3.8.3 创建密钥

3.8.4 列举钱包

3.8.5 查看私钥

3.9 sign命令

3.10 push命令

3.11 multisig命令

3.11.1 准备环境

3.11.2 准备账户

3.11.3 普通转账

3.11.4 创建提案

3.11.5 查看提案

3.11.6 审批提案

3.11.7 执行提案

3.11.8 权重为1的情况

3.12 超级权限sudo命令

3.13 系统命令system

3.14 本章小结

第4章 构建公链网络

4.1 公链网络概述

4.2 bbt脚本构建公链

4.2.1 bbt脚本帮助文档

4.2.2 执行bbt脚本

4.3 公链资源管理

4.3.1 抵押带宽

4.3.2 投票与代理投票

4.3.3 赎回带宽

4.3.4 买卖内存资源

4.4 公链启动重点步骤

4.4.1 创建系统账户

4.4.2 创建普通账户(资源管理)

4.4.3 注册生产候选人

4.4.4 查看生产候选人

4.4.5 查看账户资源

4.4.6 为候选人投票

4.4.7 生产者认领奖励

4.5 启动结束扫尾工作

4.5.1 查看出块计划

4.5.2 处理eosio账户

4.5.3 处理系统账户

4.5.4 处理system合约

4.6 手动构建多机多节点网络

4.6.1 初始节点准备

4.6.2 连接多机多节点

4.7 本章小结

第5章 源代码调试入门

5.1 调试环境搭建

5.2 调试nodeos命令

5.2.1 CMakeList.txt

5.2.2 application

5.2.3 插件初始化

5.2.4 启动插件

5.2.5 执行插件

5.2.6 断开和异常处理

5.3 调试cleos创建账户

5.3.1 入口main函数

5.3.2 get info热身

5.3.3 开始调试

5.3.4 事务相关参数

5.3.5 回调函数

5.3.6 context_free_actions

5.3.7 获取必需密钥

5.3.8 签名事务

5.3.9 打包事务

5.4 本章小结

第6章 数据持久化

6.1 blocks.log日志库

6.1.1 Merkle Tree

6.1.2 区块链数据结构

6.1.3 数据持久化概述

6.1.4 block_log接口

6.1.5 repair_log函数

6.2 chainbase状态库

6.2.1 并发访问

6.2.2 undo操作

6.2.3 持久化处理

6.2.4 移植性

6.2.5 multi_index

6.2.6 与blocks.log对比

6.3 controller控制器

6.3.1 控制器概览

6.3.2 控制器的信号

6.3.3 控制器实现概览

6.3.4 待确认库/分叉库

6.3.5 快照技术

6.4 本章小结

第7章 智能合约

7.1 简介

7.2 合约开发工具集

7.2.1 安装cdt

7.2.2 编译合约

7.2.3 部署合约

7.2.4 执行合约动作

7.2.5 编写合约

7.2.6 李嘉图合约

7.2.7 更新合约

7.2.8 调试合约

7.3 eosio.token 通证

7.3.1 创建token

7.3.2 发行token

7.3.3 token转账

7.3.4 余额减少

7.3.5 余额增加

7.4 eosio.system系统设置

7.4.1 概览

7.4.2 更新已入选生产节点

7.4.3 系统合约管理出块

7.4.4 初始化主币

7.4.5 非常规账户竞拍

7.4.6 创建账户

7.5 本章小结

第8章 插件系统源代码解析

8.1 chain_plugin链行为核心

8.1.1 接口列表

8.1.2 同步只读

8.1.3 异步读写

8.1.4 API插件的生命周期

8.1.5 结构体成员序列化

8.1.6 chain插件生命周期

8.1.7 RPC接口实现

8.2 http_plugin 基础RPC

8.2.1 EOS插件通信模式

8.2.2 add_api函数

8.2.3 add_handler函数

8.2.4 url_handlers集合

8.2.5 处理HTTP请求

8.2.6 生命周期

8.3 producer_plugin生产区块

8.3.1 生命周期

8.3.2 同步区块

8.3.3 同步事务

8.3.4 区块上链

8.3.5 区块不可逆

8.3.6 最后不可逆

8.3.7 链的条幅日志

8.3.8 倒计时器

8.3.9 循环计划出块

8.3.10 校验生产区块

8.3.11 生产区块

8.3.12 启动出块管理

8.4 mongo_db_plugin状态持久化

8.4.1 生命周期

8.4.2 信号管理

8.4.3 队列

8.4.4 擦除数据库

8.4.5 初始化插件

8.4.6 区块消费

8.4.7 接收事务信号处理

8.4.8 应用事务信号处理

8.4.9 接收区块信号处理

8.4.10 不可逆区块信号处理

8.5 txn_test_gen_plugin测试TPS插件

8.5.1 插件的整体架构

8.5.2 创建测试账户接口

8.5.3 启动测试接口

8.5.4 终止程序接口

8.5.5 TPS

8.6 本章小结

反侵权盗版声明

EOS实战与源码分析是2019年由电子工业出版社出版,作者刘文彬。

得书感谢您对《EOS实战与源码分析》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
Flink核心技术:源码剖析与特性开发 电子书
本书从设计思想和特性开发两个视角,对Flink框架进行介绍。
数据分析实战:方法、工具与可视化 电子书
本书通过实战案例和可视化的图形讲解数据分析的知识。
图解Spark:大数据快速分析实战 电子书
基于大数据分析实战,图文并茂,系统讲解Spark内核的原理,有助于读者快速掌握Spark开源集群计算框架的使用方法,涵盖Spark 3.0新特性。
R语言医学数据分析实战 电子书
以医学数据为例,讲解如何使用R进行数据分析。
跟着迪哥学:Python数据分析与机器学习实战 电子书
本书适合对人工智能、机器学习、数据分析等方向感兴趣的初学者和爱好者。