作品简介

本书由超级账本核心设计和开发者撰写,是区块链开发落地专业指南。由浅入深,系统化介绍超级账本Fabric设计精华、应用开发等。全书分为理论篇和实践篇两大部分;第1~3章介绍区块链技术的由来、核心思想及典型的应用场景;第4~5章重点介绍区块链技术中大量出现的分布式系统技术和密码学安全技术;第6~8章介绍区块链领域的三个典型开源项目:比特币、以太坊以及超级账本;第9~11章以超级账本Fabric项目为例,具体讲解了安装部署、配置管理,以及使用Fabric CA进行证书管理的实践经验;第12章重点剖析超级账本Fabric项目的核心架构设计;第13章介绍区块链应用开发的相关技巧和示例;第14章介绍区块链服务平台的设计与开发,并讲解应用超级账本Cello项目构建服务平台的相关知识。本书覆盖了区块链和分布式账本领域的最新技术,可帮助读者深入理解区块链核心原理和典型设计实现,以及高效地开发基于区块链平台的分布式应用。

杨保华,博士,毕业于清华大学。超级账本(Hyperledger)大中华区技术工作组主席,IBM大中华区Blockchain技术社区首席顾问,资深研究员。曾主持多个大规模系统平台的架构设计和研发实施,是区块链、云计算、大数据等技术的早期研究者和实践者。他热爱开源技术,曾贡献于OpenStack、OpenDaylight等开源项目,是超级账本Fabric项目的核心设计和开发者,Cello和Fabric-SDK-Py项目的发起人。个人主页为https://yeasy.github.com

陈昌,毕业于清华大学。纸贵科技CTO,曾任IBM高级研究员。技术方向包括云计算、区块链、机器学习等。他是区块链技术的早期研究和推动者,是超级账本(Hyperledger)项目的核心开发者。他有丰富的区块链应用实践经验,曾负责金融行业区块链解决方案的架构设计和实施,并主导开发了若干区块链服务平台。

作品目录

  • 序言
  • 前言
  • 理论篇
  • 第1章 区块链思想的诞生
  • 1.1 从实体货币到数字货币
  • 1.2 站在巨人的肩膀上
  • 1.3 了不起的社会学实验
  • 1.4 潜在的商业价值
  • 1.5 本章小结
  • 第2章 核心技术概览
  • 2.1 定义与原理
  • 2.2 技术的演化与分类
  • 2.3 关键问题和挑战
  • 2.4 趋势与展望
  • 2.5 认识上的误区
  • 2.6 本章小结
  • 第3章 典型应用场景
  • 3.1 应用场景概览
  • 3.2 金融服务
  • 3.3 征信和权属管理
  • 3.4 资源共享
  • 3.5 贸易管理
  • 3.6 物联网
  • 3.7 其他场景
  • 3.8 本章小结
  • 第4章 分布式系统核心问题
  • 4.1 一致性问题
  • 4.2 共识算法
  • 4.3 FLP不可能原理
  • 4.4 CAP原理
  • 4.5 ACID原则
  • 4.6 Paxos算法与Raft算法
  • 4.7 拜占庭问题与算法
  • 4.8 可靠性指标
  • 4.9 本章小结
  • 第5章 密码学与安全技术
  • 5.1 Hash算法与数字摘要
  • 5.2 加解密算法
  • 5.3 消息认证码与数字签名
  • 5.4 数字证书
  • 5.5 PKI体系
  • 5.6 Merkle树结构
  • 5.7 布隆过滤器
  • 5.8 同态加密
  • 5.9 其他问题
  • 5.10 本章小结
  • 第6章 比特币——区块链思想诞生的摇篮
  • 6.1 比特币项目简介
  • 6.2 原理和设计
  • 6.3 挖矿
  • 6.4 共识机制
  • 6.5 闪电网络
  • 6.6 侧链
  • 6.7 热点问题
  • 6.8 相关工具
  • 6.9 本章小结
  • 第7章 以太坊——挣脱数字货币的枷锁
  • 7.1 以太坊项目简介
  • 7.2 核心概念
  • 7.3 主要设计
  • 7.4 相关工具
  • 7.5 安装客户端
  • 7.6 使用智能合约
  • 7.7 智能合约案例:投票
  • 7.8 本章小结
  • 第8章 超级账本——面向企业的分布式账本
  • 8.1 超级账本项目简介
  • 8.2 社区组织结构
  • 8.3 顶级项目介绍
  • 8.4 开发必备工具
  • 8.5 贡献代码
  • 8.6 本章小结
  • 实践篇
  • 第9章 超级账本Fabric部署和使用
  • 9.1 简介
  • 9.2 本地编译安装
  • 9.3 使用Docker镜像
  • 9.4 启动Fabric网络
  • 9.5 链码的概念与使用
  • 9.6 使用多通道
  • 9.7 SDK支持
  • 9.8 生产环境注意事项
  • 9.9 本章小结
  • 第10章 超级账本Fabric配置管理
  • 10.1 简介
  • 10.2 Peer配置剖析
  • 10.3 Orderer配置剖析
  • 10.4 cryptogen生成组织身份配置
  • 10.5 configtxgen生成通道配置
  • 10.6 configtxlator转换配置
  • 10.7 本章小结
  • 第11章 超级账本Fabric CA应用与配置
  • 11.1 简介
  • 11.2 安装服务端和客户端
  • 11.3 启动CA服务
  • 11.4 服务端命令剖析
  • 11.5 服务端配置文件解析
  • 11.6 与服务端进行交互
  • 11.7 客户端命令剖析
  • 11.8 客户端配置文件解析
  • 11.9 生产环境部署
  • 11.10 本章小结
  • 第12章 超级账本Fabric架构与设计
  • 12.1 整体架构概览
  • 12.2 核心概念与组件
  • 12.3 gRPC消息协议
  • 12.4 权限管理和策略
  • 12.5 用户链码
  • 12.6 系统链码
  • 12.7 排序服务
  • 12.8 本章小结
  • 第13章 区块链应用开发
  • 13.1 简介
  • 13.2 链码的原理、接口与结构
  • 13.3 链码开发API
  • 13.4 应用开发案例一:转账
  • 13.5 应用开发案例二:资产权属管理
  • 13.6 应用开发案例三:调用其他链码
  • 13.7 应用开发案例四:发送事件
  • 13.8 开发最佳实践小结
  • 13.9 本章小结
  • 第14章 区块链服务平台设计
  • 14.1 简介
  • 14.2 IBM Bluemix云区块链服务
  • 14.3 微软Azure云区块链服务
  • 14.4 使用超级账本Cello搭建区块链服务
  • 14.5 本章小结
  • 附录
  • 附录A 术语表
  • 附录B 常见问题解答
  • 附录C Golang开发相关
  • 附录D ProtoBuf与gRPC
  • 附录E 参考资源
展开全部