YL12160 9787115471796 9787111571209 9787111577829
书 号:9787115471796
定 价:79.00 元
页 数:300
本书特色
1.专注介绍区块链核心原理和应用技术
2.详细解读区块链平台以太坊和HyperLedger
3.注重实战,全书包含5个完整实际项目案例。
本书以区块链平台的编程实战开发为主要特色,深入介绍区块链应用的模式设计和在具体平台上的开发部署。
作者是国内区块链技术研究者和一线开发者,在区块链行业具有非常好的知名度和项目实战经验,依托浙江大学的高层次科研平台积累了大量的区块链科研和产业项目的经验,在本书中向读者介绍了更新更实用的区块链技术内容。
目录
正在加工……
作者介绍
蔡亮,博士,副教授,浙江大学计算机学院软件工程系主任,浙江省重大科技专项专家。主要从事区块链、云计算、网络安全、可信计算和金融业务处理的研究,在核心期刊和国际会议上发表了数十篇论文。参与了多项或省部级科研项目,如国防军工预研基金项目、国家创新基金项目、863项目等。获得教育部科技进步一等奖、浙江省科技进步一等奖和三等奖。
李启雷,博士,讲师,杭州趣链科技有限公司席技术官。主要从事体感人机交互、区块链和移动互联网技术等方面的研究与开发。作为核心研究人员参与国家863计划和国家科技支撑计划,在国内外知名学术期刊和会议发表论文九篇,获得国家发明专利一项,软件著作权一项。
梁秀波,博士,副研究员,杭州趣链科技有限公司副总经理。主要从事机器学习、区块链、数字娱乐和移动互联网等方面的研究与开发,曾赴法国进行为期一年的访问研究。作为核心研究人员参与和省部级科研项目近十项,主持企事业单位委托项目二十余项。已发表论文十余篇,获得国家发明专利三项。
本书从实战的角度出发,结合实际应用开发场景,对区块链技术进行了全面介绍和剖析。全书共分为四个部分:部分对区块链进行了全景分析,介绍了其概念、历史、技术流派、主要公司和典型应用场景,并给出了当前区块链产业生态图谱;第二部分对知名开源区块链平台以太坊和HyperLedger进行了详细解读,并介绍了如何基于这两个平台进行区块链应用开发;第三部分以自主可控联盟区块链Hyperchain为例,分析了企业级区块链平台的核心技术,介绍了基于Hyperchain的企业级区块链应用开发技术;第四部分介绍了多个区块链实际应用项目案例,并对开发过程和关键代码进行了详细分析。本书不仅全面深入,而且注重实战,非常适合区块链开发人员由浅入深地学习区块链技术。理 论 篇
第1章 区块链思想的诞生 2
1.1 从实体货币到数字货币 2
1.2 站在巨人的肩膀上 5
1.3 了不起的社会学实验 5
1.4 潜在的商业价值 7
1.5 本章小结 8
第2章 核心技术概览 9
2.1 定义与原理 9
2.2 技术的演化与分类 11
2.3 关键问题和挑战 13
2.4 趋势与展望 17
2.5 认识上的误区 19
2.6 本章小结 19
第3章 典型应用场景 20
3.1 应用场景概览 20
3.2 金融服务 22
3.2.1 银行业金融管理 22
3.2.2 证券交易 24
3.2.3 众筹投资 25
3.3 征信和权属管理 26
3.4 资源共享 28
3.5 贸易管理 29
3.6 物联网 30
3.7 其他场景 31
3.8 本章小结 33
第4章 分布式系统核心问题 34
4.1 一致性问题 34
4.1.1 定义与重要性 34
4.1.2 问题与挑战 35
4.1.3 一致性要求 36
4.1.4 带约束的一致性 36
4.2 共识算法 37
4.2.1 问题与挑战 38
4.2.2 常见算法 38
4.2.3 理论界限 38
4.3 FLP 不可能原理 39
4.3.1 定义 39
4.3.2 正确理解 39
4.4 CAP 原理 40
4.4.1 定义 40
4.4.2 应用场景 41
4.5 ACID 原则 41
4.6 Paxos 算法与 Raft 算法 42
4.6.1 Paxos 算法 42
4.6.2 Raft 算法 45
4.7 拜占庭问题与算法 45
4.8 可靠性指标 48
4.8.1 几个 9 的指标 48
4.8.2 两个核心时间 49
4.8.3 提高可靠性 49
4.9 本章小结 49
第5章 密码学与安全技术 50
5.1 Hash 算法与数字摘要 50
5.1.1 Hash定义 50
5.1.2 常见算法 51
5.1.3 性能 51
5.1.4 数字摘要 52
5.1.5 Hash 攻击与防护 52
5.2 加解密算法 52
5.2.1 加解密系统基本组成 53
5.2.2 对称加密算法 53
5.2.3 非对称加密算法 54
5.2.4 选择明文攻击 55
5.2.5 混合加密机制 56
5.2.6 离散对数与 Diffie–Hellman密钥交换协议 57
5.3 消息认证码与数字签名 57
5.3.1 消息认证码 58
5.3.2 数字签名 58
5.3.3 安全性 59
5.4 数字证书 59
5.4.1 X.509 证书规范 60
5.4.2 证书格式 61
5.4.3 证书信任链 62
5.5 PKI 体系 63
5.5.1 PKI 基本组件 63
5.5.2 证书的签发 63
5.5.3 证书的撤销 66
5.6 Merkle树结构 66
5.7 布隆过滤器 67
5.8 同态加密 68
5.9 其他问题 70
5.10 本章小结 71
第6章 比特币——区块链思想诞生的摇篮 72
6.1 比特币项目简介 72
6.1.1 比特币大事记 73
6.1.2 其他数字货币 74
6.2 原理和设计 75
6.2.1 基本交易过程 75
6.2.2 重要概念 76
6.2.3 创新设计 78
6.3 挖矿 80
6.3.1 基本原理 80
6.3.2 挖矿过程 81
6.3.3 如何看待挖矿 81
6.4 共识机制 82
6.4.1 工作量证明 82
6.4.2 权益证明 83
6.5 闪电网络 83
6.6 侧链 85
6.6.1 SPV 证明 85
6.6.2 双向挂钩 86
6.6.3 新进展 87
6.7 热点问题 87
6.7.1 设计中的权衡 87
6.7.2 分叉 87
6.7.3 交易延展性 88
6.7.4 扩容之争 89
6.7.5 比特币的监管和追踪 90
6.8 相关工具 91
6.9 本章小结 92
第7章 以太坊——挣脱数字货币的枷锁 93
7.1 以太坊项目简介 93
7.1.1 以太坊项目简史 94
7.1.2 主要特点 95
7.2 核心概念 95
7.3 主要设计 97
7.3.1 智能合约相关设计 97
7.3.2 交易模型 97
7.3.3 共识 97
7.3.4 降低攻击 98
7.3.5 提高扩展性 98
7.4 相关工具 98
7.4.1 客户端和开发库 98
7.4.2 以太坊钱包 99
7.4.3 IDE 100
7.4.4 网站资源 100
7.5 安装客户端 100
7.5.1 从 PPA 直接安装 100
7.5.2 从源码编译 101
7.6 使用智能合约 102
7.6.1 搭建测试用区块链 102
7.6.2 创建和编译智能合约 104
7.6.3 部署智能合约 105
7.6.4 调用智能合约 106
7.7 智能合约案例:投票 106
7.7.1 智能合约代码 107
7.7.2 代码解析 109
7.8 本章小结 111
第8章 级账本——面向企业的分布式账本 112
8.1 级账本项目简介 112
8.2 社区组织结构 114
8.2.1 基本结构 114
8.2.2 大中华区技术工作组 114
8.3 项目介绍 115
8.3.1 Fabric 项目 116
8.3.2 Sawtooth 项目 117
8.3.3 Iroha 项目 117
8.3.4 Blockchain Explorer 项目 117
8.3.5 Cello 项目 118
8.3.6 Indy 项目 118
8.3.7 Composer 项目 118
8.3.8 Burrow 项目 119
8.4 开发工具 119
8.4.1 Linux Foundation ID 119
8.4.2 Jira——任务和进度管理 119
8.4.3 Gerrit——代码仓库和 Review管理 120
8.4.4 RocketChat——在线沟通 121
8.5 贡献代码 121
8.6 本章小结 126
实 践 篇
第9章 级账本 Fabric 部署和使用 128
9.1 简介 128
9.2 本地编译安装 129
9.2.1 操作系统 130
9.2.2 环境配置 130
9.2.3 获取代码 131
9.2.4 编译安装 fabric-peer 组件 131
9.2.5 编译安装 fabric-orderer 组件 132
9.2.6 编译安装 fabric-ca 组件 133
9.2.7 编译安装辅助工具 133
9.2.8 获取 chaintool 133
9.2.9 安装Go语言相关工具 134
9.2.10 示例配置 134
9.3 使用 Docker 镜像 134
9.3.1 安装 Docker 服务 134
9.3.2 安装 docker-compose 135
9.3.3 获取 Docker 镜像 135
9.3.4 镜像 Dockerfile 138
9.4 启动 Fabric 网络 143
9.4.1 网络拓扑 143
9.4.2 准备相关配置文件 144
9.4.3 启动 Orderer 节点 150
9.4.4 启动 Peer 节点 151
9.4.5 操作网络 152
9.4.6 基于容器方式 156...........
本书以比特币、以太坊、Fabric三种区块链的技术原理和实际操作为主要目标,全书具体内容如下。
第1章介绍比特币区块链,包括交易和交易链、区块和区块链、挖矿、矿池、脚本系统、合约应用案例等内容,向读者们介绍区块链基础知识。
第2章讲述区块链进阶技术,包括外带数据原理、Counterparty原理、挖矿算法解析、侧链技术,以及*新的IBLT、隔离见证、闪电网络等。
第3章的主要内容是区块链中使用的密码学基础,包括Hash函数、椭圆曲线密码体系、ECDSA签名、Schnorr数字签名和Bloom f?ilter算法等,向开发者介绍密码学相关算法。
第4章是比特币区块链的编译、代码剖析、建立私链及API开发等实操内容。
第5章介绍以太坊的技术原理,包括以太坊简介、账户管理、交易原理、智能合约等,还涉及搭建私有链,智能合约开发、部署和调用等实操过程。
第6章介绍了IBM开源的区块链底层技术平台Fabric的原理和实操,对Fabric系统架构、节点、验证总账、交易背书的基本流程进行了详尽独到的分析,对Fabric的私有链建立和配置、链上代码的开发过程进行了详细的描述,为开发者使用Fabric提供技术指导。
推荐序一 区块链的价值实现
推荐序二 区块链,推动金融代际跃升的新力量
推荐序三 区块链技术的现实和未来
前言
第1章 区块链基础 1
1.1 交易和交易链 2
1.1.1 比特币地址 3
1.1.2 交易的本质 3
1.1.3 输入和输出 5
1.1.4 交易类型 5
1.1.5 找零地址 6
1.2 区块和区块链 8
1.2.1 区块结构 8
1.2.2 创世块 10
1.2.3 区块链原理 13
1.3 挖矿、矿池 14
1.3.1 挖矿原理与区块的产生 14
1.3.2 挖矿难度 16
1.3.3 矿池原理与商业模式 18
1.4 脚本系统 19
1.4.1 脚本特点 20
1.4.2 脚本运行过程 24
1.4.3 脚本操作码解读 25
1.4.4 脚本执行过程 26
1.5 合约应用案例 27
1.5.1 合约应用原理 28
1.5.2 示例1:提供押金证明 29
1.5.3 示例2:担保和争端调解 30
1.5.4 示例3:保证合约 30
1.5.5 示例4:使用外部状态 32
1.5.6 示例5:跨链交易 34
1.5.7 示例6:支付证明合约 35
1.5.8 示例7:特定对象的快速调整(微)支付 36
1.5.9 示例8:多方去中心化彩票 37
参考资料 37
第2章 区块链进阶 39
2.1 外带数据 39
2.1.1 OP_RETURN外带数据 39
2.1.2 Multi-Signatures外带数据 40
2.2 Counterparty 40
2.2.1 Counterparty附生链的实现机制详解 41
2.2.2 发送 41
2.2.3 订单 42
2.2.4 发行 42
2.2.5 广播 43
2.2.6 赌约 43
2.3 挖矿算法解析 43
2.3.1 PoW挖矿算法及分析 43
2.3.2 PoS股权证明算法及分析 44
2.3.3 DPoS股份授权证明算法及分析 45
2.4 Sidechains 45
2.4.1 侧链背景 45
2.4.2 技术原理 46
2.5 新比特币技术 49
2.5.1 IBLT 49
2.5.2 隔离见证 50
2.5.3 闪电网络 51
2.5.4 RSMC 51
2.5.5 HTLC 52
参考资料 53
第3章 密码学基础 54
3.1 Hash函数 54
3.1.1 技术原理 54
3.1.2 SHA-1算法 55
3.1.3 SHA-2算法 57
3.1.4 SHA-3算法 64
3.1.5 RIPEMD160算法 65
3.2 椭圆曲线密码 66
3.2.1 椭圆曲线方程 67
3.2.2 公钥和私钥的产生算法 68
3.3 ECDSA数字签名 69
3.4 Schnorr数字签名 70
3.4.1 技术思想 70
3.4.2 Schnorr与ECDSA的异同 70
3.5 Bloom f?ilter 71
3.5.1 技术原理 71
3.5.2 应用案例 72
第4章 比特币区块链开发 74
4.1 Bitcoin的编译过程 74
4.1.1 Ubuntu下的编译 74
4.1.2 Mac下的编译 75
4.1.3 Windows下的编译 76
4.2 代码剖析 77
4.2.1 主要模块 77
4.2.2 初始化和启动 79
4.2.3 P2P网络 80
4.2.4 交易和区块 89
4.2.5 脚本系统 89
4.2.6 挖矿 91
4.2.7 私钥 92
4.3 性能实战 93
4.3.1 建立私链 93
4.3.2 优化改进 96
4.4 API开发 97
4.4.1 命令行调用 97
4.4.2 RPC API调用接口 100
4.4.3 如何调用API进行开发 103
4.4.4 通过命令实现区块链的查询实例 103
第5章 以太坊智能合约开发 109
5.1 以太坊 109
5.1.1 以太坊的定义 109
5.1.2 下一代区块链 109
5.1.3 以太坊虚拟机 110
5.1.4 以太坊的工作原理 110
5.2 以太坊账户管理 111
5.2.1 账户 111
5.2.2 钥匙文件 112
5.2.3 创建账号 112
5.3 更新、备份、恢复账号 115
5.3.1 更新账号 115
5.3.2 账号备份和恢复 116
5.4 公有链、联盟链、私有链及网络配置 117
5.4.1 以太坊网络 117
5.4.2 公有链、私有链和联盟链 117
5.4.3 如何连接 118
5.4.4 更快地下载区块链 119
5.4.5 静态节点、信任节点和启动节点 120
5.5 搭建测试网络和私有链 121
5.5.1 Modern测试网 121
5.5.2 设置本地私有测试网 121
5.6 账户、交易核心概念及投注合约解析 125
5.6.1 外有账户与合约账户 125
5.6.2 什么是交易 126
5.6.3 什么是消息 126
5.6.4 什么是gas 126
5.6.5 估算交易成本 127
5.6.6 账户交互示例:投注合约 128
5.7 深入浅出智能合约 131
5.7.1 合约的定义 131
5.7.2 以太坊高级语言 131
5.7.3 写合约 131
5.7.4 编译合约 132
5.7.5 创建和部署合约 134
5.7.6 与合约互动 135
5.7.7 合约元数据 136
5.7.8 测试合约和交易 137
5.8 如何部署、调用智能合约 138
5.8.1 RPC 138
5.8.2 惯例 138
5.8.3 部署合约 139
5.8.4 和智能合约互动 141
5.8.5 Web3.js 142
5.8.6 控制台 143
5.8.7 查看合约与交易 143
5.9 智能合约案例实战 143
参考资料 146
第6章 Fabric原理和实操 147
6.1 级账本项目背景 147
6.2 Fabric简介 149
6.3 系统架构 150
6.3.1 交易 150
6.3.2 区块链数据结构 150
6.3.3 节点 151
6.4 交易背书的基本流程 155
6.4.1 客户端创建交易后发送到它所选择的背书节点 156
6.4.2 背书节点模拟交易,然后生成背书签名 157
6.4.3 提交客户端获取交易的背书,通过排序服务广播 158
6.4.4 排序服务向所有节点投递交易消息 158
6.5 背书策略 159
6.5.1 背书策略规范 159
6.5.2 交易评估与背书策略 159
6.5.3 背书策略示例 160
6.6 验证总账(1.0版本之后的功能)和原始总账检查点(精简) 160
6.6.1 验证总账 160
6.6.2 原始总账检查点 161
6.7 Fabric V1.0开发者快速入门 163
6.7.1 前置条件和系统配置 163
6.7.2 下载源代码,创建Fabric网络 164
6.7.3 生成配置文件 164
6.7.4 使用Docker创建Fabric网络&创建/加入通道(账本) 165
6.7.5 示例合约执行过程解析 165
6.7.6 查看智能合约执行日志 166
6.7.7 手工创建和加入通道 166
6.7.8 使用命令行工具部署、调用、查询智能合约 167
6.7.9 开发环境故障排除 168
6.7.10 Fabric常用的Docker命令 168
6.8 智能合约开发 169
6.8.1 智能合约的定义 169
6.8.2 GO语言智能合约的开发和部署 169
6.8.3 Java智能合约的编写与部署 174
6.8.4 开发和提交代码 180
相关术语 182
附录A 国内区块链联盟介绍 184
附录B 《ChinaLedger面向中国资本市场应用的分布式总账白皮书》全文 201
评分
评分
评分
评分
评分
评分
评分
评分
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.cndgn.com All Rights Reserved. 新城书站 版权所有