互联网
类型
可以朗读
语音朗读
86千字
字数
2019-01-01
发行日期
展开全部
主编推荐语
全面展示EOS区块链技术的众多概念和特性。
内容简介
全书共分为7章,分别是初识EOS、EOS的工作原理、开发工具和环境、编写智能合约、EOSRPC接口、创建和部署DApp、部署基于EOS的侧链等。本书希望能够帮助开发者进入EOS的世界并比较容易地上手开发DApp。
目录
- 版权信息
- 作者简介
- 前言
- 第1章 初识EOS
- 1.1 区块链操作系统
- 1.1.1 什么是EOS
- 1.1.2 EOS要解决什么问题
- 1.1.3 EOS的解决方案
- 1.1.4 EOS的生态发展需要哪些支持
- 1.2 EOS开发团队
- 1.3 EOS基础名词解释
- 1.3.1 区块链
- 1.3.2 比特币
- 1.3.3 以太坊
- 1.3.4 智能合约
- 1.3.5 DApp去中心化应用
- 1.3.6 共识机制
- 1.3.7 出块时间
- 1.3.8 IPFS
- 1.4 EOS系统的特点
- 1.4.1 设计理念
- 1.4.2 功能特性
- 1.4.3 经济模型
- 1.5 EOS技术意义
- 1.5.1 EOS与BTC
- 1.5.2 EOS与ETH
- 1.5.3 EOS与腾讯服务器集群
- 1.5.4 并行执行智能合约
- 1.5.5 数据中心级节点
- 1.5.6 跨链通信与更加轻量级的默克尔树证明
- 1.5.7 拓展性
- 1.5.8 拒绝服务攻击DDoS
- 1.6 开发进度规划
- 1.6.1 阶段1:最小可行的测试环境(2017年夏季)
- 1.6.2 阶段2:最小可行的测试网络(2017年秋季)
- 1.6.3 阶段3:测试&安全审计
- 1.6.4 阶段4:并行优化(2018年夏季/秋季)
- 1.6.5 阶段5:实现集群(未来)
- 1.7 EOS系统当前面临的挑战
- 1.7.1 开发者的成本
- 1.7.2 潜在的攻击EOS系统的方法
- 1.7.3 超级节点的服务器成本和稳定性
- 1.8 总结
- 第2章 EOS的工作原理
- 2.1 EOS系统架构
- 2.2 区块数据结构
- 2.2.1 区块头(block_header)
- 2.2.2 区块摘要(signed_block_summary)
- 2.2.3 区块
- 2.3 EOS的账户体系
- 2.3.1 什么是账户
- 2.3.2 什么是交易
- 2.3.3 什么是公钥
- 2.3.4 什么是密钥对
- 2.3.5 什么是权限
- 2.3.6 账户权限的更新
- 2.3.7 什么是钱包
- 2.3.8 账户和钱包的关系
- 2.3.9 EOS权限管理
- 2.3.10 丢失密码可恢复
- 2.4 EOS的共识机制
- 2.4.1 EOS共识机制的历史背景
- 2.4.2 什么是BFT-DPoS
- 2.4.3 交易的数据结构
- 2.4.4 每秒处理交易数(TPS)
- 2.4.5 交易确认
- 2.4.6 交易作为权益证明(TaPoS)
- 2.4.7 DPoS的不可逆确认算法
- 2.4.8 EOS共识机制的优势
- 2.4.9 EOS共识机制的问题
- 2.5 社区治理模式
- 2.5.1 超级节点
- 2.5.2 节点基础配置
- 2.5.3 节点收益
- 2.5.4 EOS主网启动过程
- 2.5.5 节点投票的设计
- 2.5.6 并行的EOS主网
- 2.6 EOS资源的经济模型
- 2.6.1 什么是EOS资源
- 2.6.2 EOS不是免费的吗?为什么还要消耗资源
- 2.6.3 EOS资源模型与ETH的不同
- 2.6.4 CPU和带宽的抵押模型
- 2.6.5 内存买卖模型
- 2.6.6 EOS收费模式可能存在的问题
- 2.7 总结
- 第3章 开发工具和环境
- 3.1 EOS客户端安装
- 3.1.1 硬件和系统要求
- 3.1.2 环境准备
- 3.1.3 安装EOS
- 3.1.4 验证安装结果
- 3.1.5 单节点测试
- 3.1.6 多节点测试
- 3.1.7 测试节点同步
- 3.1.8 主网节点同步测试
- 3.1.9 如何更新EOS版本
- 3.1.10 编译安装常见问题
- 3.2 nodeos命令行工具
- 3.3 cleos命令行工具
- 3.4 keosd钱包
- 3.4.1 如何运行keosd
- 3.4.2 命令参考
- 3.4.3 使用nodeos管理钱包
- 3.5 EOS源代码结构
- 3.6 EOS编程开发工具
- 3.6.1 Visual Studio Code
- 3.6.2 CLion
- 3.7 技术社区
- 3.8 总结
- 第4章 编写智能合约
- 4.1 什么是EOS智能合约
- 4.2 C/C++
- 4.2.1 预处理和头文件
- 4.2.2 构造函数
- 4.2.3 私有函数
- 4.2.4 公有函数
- 4.2.5 设置Action
- 4.2.6 .h、.hpp和.cpp文件
- 4.3 WebAssembly
- 4.4 ABI
- 4.5 通信模式
- 4.5.1 Action
- 4.5.2 Transaction
- 4.6 控制结构
- 4.7 数据类型
- 4.7.1 自定义类型
- 4.7.2 结构体
- 4.7.3 结构体的别名
- 4.8 EOS智能合约数据库
- 4.8.1 什么是EOS智能合约数据库
- 4.8.2 多重索引数据库API(Multi-Index API)
- 4.8.3 数据表
- 4.8.4 多索引
- 4.8.5 迭代器
- 4.8.6 使用multi-index表
- 4.9 eosio账户
- 4.10 eosiolib库
- 4.11 系统合约
- 4.11.1 eosio.bios智能合约
- 4.11.2 eosio.token智能合约
- 4.11.3 exchange智能合约
- 4.11.4 eosio.msig智能合约
- 4.12 李嘉图合约(Ricardian Contract)
- 4.13 应用实践1:Hello World
- 4.13.1 你的第一个EOS DApp
- 4.13.2 搭建智能合约测试环境
- 4.13.3 创建DApp工程
- 4.13.4 编译智能合约
- 4.13.5 部署智能合约到账户
- 4.13.6 调用智能合约
- 4.13.7 李嘉图合约
- 4.14 资源消耗限制
- 4.15 调试智能合约
- 4.16 智能合约安全性
- 4.16.1 溢出漏洞处理
- 4.16.2 智能合约更新升级
- 4.16.3 EOS核心仲裁法庭解决争议
- 4.17 应用实践2:eosio.token智能合约
- 4.17.1 创建账户
- 4.17.2 部署智能合约
- 4.17.3 创建EOS Token
- 4.17.4 发行Token
- 4.17.5 转账
- 4.18 总结
- 第5章 EOS RPC接口
- 5.1 配置插件
- 5.2 测试工具
- 5.3 主网RPC接口地址
- 5.4 主要接口功能说明
- 5.4.1 API参数
- 5.4.2 Chain API
- 5.4.3 Wallet API
- 5.5 获取智能合约数据
- 5.6 客户端签名
- 5.6.1 keosd签名
- 5.6.2 eosjs库签名
- 5.6.3 eosjs2库签名
- 5.6.4 mds-eosjs库签名
- 5.7 应用实践3:EOS钱包
- 5.7.1 钱包的各种类型
- 5.7.2 钱包的数据和界面
- 5.7.3 查询账户余额
- 5.7.4 转账
- 5.7.5 开源EOS钱包
- 5.8 应用实践4:区块链浏览器
- 5.8.1 基本信息
- 5.8.2 区块列表与区块详情
- 5.8.3 交易详情
- 5.8.4 查询账户交易记录
- 5.9 总结
- 第6章 创建和部署DApp
- 6.1 什么是DApp(去中心化应用)
- 6.2 DApp基础架构
- 6.3 Demux DApp架构
- 6.4 MongoDB数据库插件
- 6.5 智能合约的资源消耗
- 6.6 应用实践5:TicTacToe
- 6.6.1 游戏规则
- 6.6.2 合约开发
- 6.6.3 创建ABI文件
- 6.6.4 编译合约
- 6.6.5 部署合约
- 6.6.6 命令行测试游戏
- 6.6.7 创建Web前端应用程序
- 6.7 应用实践6:Todolist DApp
- 6.7.1 创建table
- 6.7.2 创建Action
- 6.7.3 部署和命令行测试
- 6.7.4 前端实现
- 6.8 应用实践7:EOS Blog DApp
- 6.8.1 合约开发
- 6.8.2 前端开发
- 6.9 其他著名EOS DApp案例
- 6.9.1 Everipedia——基于EOS的维基百科
- 6.9.2 Chintai——EOS通证租赁平台
- 6.9.3 EOSfinex——基于EOS的去中心化交易所
- 6.9.4 RiskExchange——基于EOS的风险交易所
- 6.10 总结
- 第7章 部署基于EOS的侧链
- 7.1 主链和侧链
- 7.1.1 主链
- 7.1.2 侧链
- 7.1.3 分层网络架构
- 7.2 侧链的意义
- 7.2.1 根据资源付费的无币区块链
- 7.2.2 降低开发资源费用
- 7.3 启动多节点测试侧链
- 7.4 启动支持投票的EOS侧链
- 7.4.1 手动执行启动过程
- 7.4.2 配置初始启动节点
- 7.4.3 IP地址准备和P2P连接
- 7.4.4 启动genesis节点
- 7.4.5 为eosio账户创建密钥
- 7.4.6 创建重要的系统账户
- 7.4.7 部署eosio.token智能合约
- 7.4.8 部署eosio.msig智能合约
- 7.4.9 创建SYS Token
- 7.4.10 部署eosio.system智能合约
- 7.4.11 切换到多节点
- 7.4.12 抵押Token和拓展网络
- 7.4.13 创建抵押账户
- 7.4.14 注册出块节点
- 7.4.15 eosio撤销权限
- 7.5 总结
- 本书总结
- 参考文献
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。