
0人評分過此書
一本书讲透区块链技术系统全面:从区块链系统构建,到完整DAPP开发,全流程知识点覆盖由浅入深:从区块链基础切入,一步步掌握智能合约、DAPP、以太坊钱包开发案例丰富:结合案例讲解,生动形象,附赠实战项目源代码区块链专业平台登链社区、无退社区重磅推荐!
- 封面页
- 书名页
- 版权页
- 作者简介
- 推荐序
- 目录
-
第1章 区块链概要
-
1.1 区块链诞生之前
-
1.2 区块链的诞生标志——比特币
-
1.3 比特币之后的区块链
-
1.3.1 比特币与区块链的分离
-
1.3.2 智能合约
-
-
1.4 分布式系统
-
1.5 什么是区块链
-
1.6 代币是什么
-
1.7 什么是区块
-
1.7.1 区块是怎么产生的
-
1.7.2 区块生成时间
-
-
1.8 区块链的硬分叉
-
1.9 区块链的去中心化
-
1.10 区块链的主要种类
-
1.10.1 公链(public blockchain)
-
1.10.2 私链(private blockchain)
-
1.10.3 联盟链(consortium blockchain)
-
-
1.11 加密货币
-
1.12 智能合约(smart contract)
-
1.12.1 什么是智能合约
-
1.12.2 智能合约的实现方式
-
-
1.13 区块链应用
-
1.13.1 金融服务
-
1.13.2 游戏
-
1.13.3 数字资产
-
1.13.4 供应链管理
-
1.13.5 其他
-
-
1.14 比特币的历史
-
1.14.1 比特币前传
-
1.14.2 比特币面世
-
1.14.3 比特币发展中的主要事件
-
-
1.15 比特币的设计取舍
-
1.15.1 区块链
-
1.15.2 共识算法
-
1.15.3 比特币中的交易
-
1.15.4 比特币的供应模式
-
1.15.5 去中心化与中心化
-
1.15.6 可替换性
-
-
-
第2章 密码学基础
-
2.1 密码学发展历史
-
2.1.1 密码学发展的三个阶段
-
2.1.2 近代密码学的开端
-
2.1.3 区块链去中心化密钥共享
-
-
2.2 密码系统
-
2.2.1 定义
-
2.2.2 对称加密
-
2.2.3 非对称加密
-
-
2.3 区块链常用密码学知识
-
2.3.1 Hash(哈希)算法
-
2.3.2 RSA算法
-
2.3.3 默克尔树
-
2.3.4 数字签名
-
2.3.5 零知识证明和Zcash
-
-
2.4 加密货币
-
2.4.1 什么是加密货币
-
2.4.2 热门加密货币
-
2.4.3 运作方式
-
2.4.4 加密货币的安全性
-
-
2.5 加密经济学
-
2.5.1 货币的功能
-
2.5.2 货币的属性
-
2.5.3 货币的种类
-
2.5.4 Fiat货币
-
2.5.5 比特币有货币属性吗
-
2.5.6 加密货币经济的未来
-
-
2.6 比特币中的密码学
-
2.6.1 比特币中的哈希处理
-
2.6.2 比特币中的公钥加密
-
2.6.3 比特币中的钱包和数字签名
-
-
-
第3章 零知识证明
-
3.1 抛砖引玉:初识零知识证明
-
3.1.1 为什么会有零知识证明?
-
3.1.2 简述零知识证明在区块链中的应用
-
-
3.2 零知识证明使用场景案例
-
3.2.1 场景一:万圣节糖果
-
3.2.2 场景二:洞穴
-
3.2.3 场景三:数独挑战
-
3.2.4 场景四:一个“真实世界中”的案例
-
-
3.3 零知识证明的应用发展
-
3.3.1 区块链扩容的挑战
-
3.3.2 ZK Sync的承诺:免信任、保密、快速
-
3.3.3 RedShift:透明的通用SNARK
-
-
3.4 libsnark开源实践简介
-
3.5 术语介绍
-
-
第4章 进入以太坊世界
-
4.1 以太坊概述
-
4.2 智能合约
-
4.3 账户
-
4.4 以太币的单位
-
4.5 以太坊虚拟机(EVM)
-
4.6 以太坊客户端
-
4.6.1 geth安装
-
4.6.2 geth使用
-
-
4.7 以太坊钱包
-
4.8 以太坊交易
-
4.8.1 价值传递
-
4.8.2 创建智能合约
-
4.8.3 调用合约方法
-
-
4.9 以太坊网络
-
4.9.1 主网网络(Mainnet)
-
4.9.2 测试网络(Testnet)
-
4.9.3 私有网络、开发者模式
-
4.9.4 模拟区块链网络
-
-
4.10 以太坊历史回顾
-
4.10.1 奥林匹克(Olympic)
-
4.10.2 边疆(Frontier)
-
4.10.3 家园(Homestead)
-
4.10.4 DAO分叉
-
4.10.5 拜占庭(Byzantium)
-
4.10.6 君士坦丁堡(Constantinople)
-
4.10.7 伊斯坦布尔(Istanbul)
-
4.10.8 以太坊2.0
-
-
-
第5章 探索智能合约
-
5.1 Remix IDE
-
5.2 MetaMask
-
5.2.1 安装MetaMask
-
5.2.2 配置MetaMask账号
-
5.2.3 为账号充值以太币
-
-
5.3 合约编写
-
5.4 合约编译
-
5.5 合约部署及运行
-
5.5.1 部署JavaScript VM
-
5.5.2 部署到以太坊网络
-
-
5.6 合约内容
-
5.6.1 编译器版本声明
-
5.6.2 定义合约
-
5.6.3 状态变量
-
5.6.4 合约函数
-
-
-
第6章 Solidity语言基础
-
6.1 Solidity数据类型
-
6.1.1 值类型
-
6.1.2 整型
-
6.1.3 地址类型
-
6.1.4 合约类型
-
6.1.5 函数类型
-
6.1.6 引用类型
-
6.1.7 数组
-
6.1.8 映射
-
6.1.9 结构体
-
-
6.2 合约
-
6.2.1 可见性
-
6.2.2 构造函数
-
6.2.3 使用new创建合约
-
6.2.4 constant状态常量
-
6.2.5 immutable不可变量
-
6.2.6 视图函数
-
6.2.7 纯函数
-
6.2.8 访问器函数(getter)
-
6.2.9 receive函数(接收函数)
-
6.2.10 fallback函数(回退函数)
-
6.2.11 函数修改器
-
6.2.12 函数重载(Function Overloading)
-
6.2.13 函数返回多个值
-
6.2.14 事件
-
-
6.3 错误处理及异常
-
6.3.1 错误处理函数
-
6.3.2 require还是assert?
-
6.3.3 try/catch
-
-
-
第7章 Solidity进阶
-
7.1 合约继承
-
7.1.1 多重继承
-
7.1.2 基类构造函数
-
7.1.3 抽象合约
-
7.1.4 函数重写(overriding)
-
-
7.2 接口
-
合约间利用接口通信
-
-
7.3 库
-
7.3.1 内嵌库
-
7.3.2 链接库
-
7.3.3 Using for
-
-
7.4 应用程序二进制接口(ABI)
-
7.4.1 ABI编码
-
7.4.2 函数选择器
-
7.4.3 参数编码
-
7.4.4 ABI接口描述
-
-
7.5 Solidity全局API
-
7.5.1 区块和交易属性API
-
7.5.2 ABI编码及解码函数API
-
7.5.3 数学和密码学函数API
-
-
7.6 使用内联汇编
-
7.6.1 汇编基础概念
-
7.6.2 Solidity中引入汇编
-
7.6.3 汇编变量定义与赋值
-
7.6.4 汇编中的块和作用域
-
7.6.5 汇编中访问变量
-
7.6.6 for循环
-
7.6.7 if判断语句
-
7.6.8 汇编Switch语句
-
7.6.9 汇编函数
-
7.6.10 元组
-
7.6.11 汇编缺点
-
-
-
第8章 智能合约实战
-
8.1 OpenZeppelin
-
8.2 SafeMath安全算数运算
-
8.3 地址工具
-
8.4 ERC165接口发现
-
8.5 ERC20代币
-
8.6 ERC777功能型代币
-
8.6.1 ERC1820接口注册表
-
8.6.2 ERC777标准
-
8.6.3 ERC777实现
-
8.6.4 实现钩子函数
-
-
8.7 ERC721
-
8.7.1 ERC721代币规范
-
8.7.2 ERC721实现
-
-
8.8 简单的支付通道
-
8.8.1 创建支付通道智能合约
-
8.8.2 支付签名
-
-
-
第9章 去中心化DAPP实战
-
9.1 什么是DAPP
-
9.2 Web3.js
-
9.2.1 Web3.js简介
-
9.2.2 引入Web3.js
-
9.2.3 用web3.js跟合约交互
-
-
9.3 DAPP开发工具
-
9.3.1 Truffle
-
9.3.2 Ganache
-
-
9.4 DAPP投票应用
-
9.4.1 投票应用需求
-
9.4.2 创建项目
-
9.4.3 编写智能合约
-
9.4.4 合约编译及部署
-
9.4.5 合约部署
-
9.4.6 执行部署
-
9.4.7 合约测试
-
9.4.8 编写应用前端
-
9.4.9 前端与合约交互
-
9.4.10 运行DAPP
-
9.4.11 部署到公网服务器
-
-
9.5 使用Vue.js开发众筹DAPP
-
9.5.1 Vue.js简介
-
9.5.2 众筹需求分析
-
9.5.3 实现众筹合约
-
9.5.4 合约部署
-
9.5.5 众筹Web界面实现
-
9.5.6 与众筹合约交互
-
9.5.7 DAPP运行
-
9.5.8 DAPP发布
-
-
9.6 后台监听合约事件
-
9.6.1 Node.js及Express简介
-
9.6.2 常驻服务监听合约事件
-
9.6.3 MySQL数据库环境准备
-
9.6.4 创建数据库及表
-
9.6.5 监听数据入库
-
9.6.6 为前端提供众筹记录
-
-
9.7 DAPP去中心化存储
-
9.7.1 IPFS协议
-
9.7.2 IPFS安装
-
9.7.3 IPFS初始化
-
9.7.4 上传文件到IPFS
-
9.7.5 上传目录到IPFS
-
-
9.8 Embark框架
-
9.8.1 Embark概述
-
9.8.2 Embark安装
-
-
9.9 Embark重写投票DAPP
-
9.9.1 创建Embark项目
-
9.9.2 Embark项目结构
-
9.9.3 编写合约及部署
-
9.9.4 Embark DashBoard
-
9.9.5 Embark Cockpit
-
9.9.6 Embark Artifacts
-
9.9.7 前端index.html
-
9.9.8 使用Artifacts与合约交互
-
9.9.9 Embark部署
-
-
-
第10章 以太坊钱包开发
-
10.1 数字钱包基础
-
私钥
-
-
10.2 钱包相关提案
-
10.2.1 BIP32分层推导
-
10.2.2 密钥路径及BIP44
-
10.2.3 BIP39
-
10.2.4 生成助记词
-
10.2.5 用助记词推导出种子
-
-
10.3 钱包功能
-
10.4 创建钱包账号
-
10.4.1 随机数为私钥创建账号
-
10.4.2 助记词创建账号
-
-
10.5 导入账号
-
10.5.1 keystore文件
-
10.5.2 导出和导入keystore
-
-
10.6 获取钱包余额
-
10.6.1 连接以太坊网络
-
10.6.2 查询余额
-
-
10.7 发送交易
-
10.7.1 构造交易
-
10.7.2 交易签名
-
10.7.3 发送交易
-
10.7.4 Ethers.js发送交易
-
-
10.8 交易ERC20代币
-
10.8.1 构造合约对象
-
10.8.2 获取代币余额
-
10.8.2 转移代币
-
-
- 出版地 : 中國大陸
- 語言 : 簡體中文
評分與評論
請登入後再留言與評分