展开全部

主编推荐语

本书介绍使用Go语言开发的经典联盟链项目HyperledgerFabric。

内容简介

Go语言是近年来非常流行的新兴编程语言,它不仅是以太坊客户端和HyperledgerFabric区块链平台的开发语言,而且广泛应用于区块链应用的开发。本书介绍使用Go语言开发的经典联盟链项目HyperledgerFabric,它由Linux基金会管理。国外的微软、摩根大通、世界银行和国内的华为、阿里巴巴、百度、腾讯等企业都参与了Hyperledger社区的建设。

本书涵盖HyperledgerFabric区块链平台的体系结构、各组件的工作原理和管理方法、Go语言的基本编程方法,以及使用Go语言开发HyperledgerFabric智能合约和应用程序的方法。读者在阅读本书时可以充分了解和体验HyperledgerFabric区块链的强大功能,以及使用Go语言开发区块链应用的便利。

本书既可作为高等院校“区块链开发”“Web应用程序设计”等课程的教材,也可作为区块链应用开发人员的参考用书。

目录

  • 版权信息
  • 内容提要
  • 序言
  • 前言
  • 第1章 区块链技术基础
  • 1.1 区块链的工作原理及底层技术
  • 1.1.1 分布式系统的概念
  • 1.1.2 区块链技术的总体架构
  • 1.1.3 加密算法
  • 1.1.4 区块链的分类
  • 1.2 经典的区块链平台
  • 1.2.1 区块链技术的发展阶段
  • 1.2.2 比特币
  • 1.2.3 以太坊
  • 1.2.4 Hyperledger项目
  • 1.2.5 区块链编程语言
  • 1.3 本章小结
  • 习题
  • 第2章 Fabric区块链的体系结构
  • 2.1 Fabric网络模型
  • 2.1.1 Fabric网络的主要组件
  • 2.1.2 Fabric区块链平台的体系结构
  • 2.1.3 排序服务与交易的流程
  • 2.2 搭建示例网络的过程
  • 2.2.1 示例网络的拓扑
  • 2.2.2 创建示例网络
  • 2.2.3 证书颁发机构
  • 2.2.4 添加网络管理员
  • 2.2.5 创建一个联盟
  • 2.2.6 为联盟创建通道
  • 2.2.7 Peer节点与账本
  • 2.2.8 客户端应用与智能合约
  • 2.2.9 Fabric网络的扩充
  • 2.3 本章小结
  • 习题
  • 第3章 搭建Fabric区块链环境
  • 3.1 搭建基础环境
  • 3.1.1 安装VirtualBox虚拟机
  • 3.1.2 安装CentOS
  • 3.1.3 安装和使用Docker
  • 3.2 安装Fabric区块链
  • 3.2.1 配置Fabric区块链所需要的基础环境
  • 3.2.2 安装Go语言环境
  • 3.2.3 安装Git
  • 3.2.4 安装Docker Compose
  • 3.2.5 安装Fabric区块链
  • 3.3 管理工具和配置文件
  • 3.3.1 Fabric区块链的管理工具
  • 3.3.2 Fabric区块链的常用配置文件
  • 3.4 Fabric测试网络
  • 3.4.1 测试网络的特点
  • 3.4.2 启动和关闭测试网络
  • 3.4.3 创建通道
  • 3.5 本章小结
  • 习题
  • 第4章 Fabric区块链的安全机制
  • 4.1 背景知识
  • 4.1.1 许可链的概念
  • 4.1.2 安全机制的重要意义
  • 4.1.3 身份标识
  • 4.1.4 Idemix
  • 4.2 Fabric CA
  • 4.2.1 Fabric CA的工作原理
  • 4.2.2 安装Fabric CA
  • 4.2.3 初始化和启动Fabric CA Server
  • 4.2.4 设置Fabric CA Server的配置信息
  • 4.2.5 建立Fabric CA Server集群
  • 4.2.6 Fabric CA Client
  • 4.3 安全策略
  • 4.3.1 策略简介
  • 4.3.2 定义策略规则
  • 4.4 成员服务提供者
  • 4.4.1 MSP的作用
  • 4.4.2 MSP域
  • 4.4.3 MSP的目录结构
  • 4.4.4 配置MSP
  • 4.5 组织管理
  • 4.5.1 组织在MSP中扮演的角色
  • 4.5.2 为组织生成证书
  • 4.6 本章小结
  • 习题
  • 第5章 节点与通道管理
  • 5.1 Peer节点管理
  • 5.1.1 配置文件core.yaml
  • 5.1.2 peer命令
  • 5.2 通道管理
  • 5.2.1 通道的分类
  • 5.2.2 通道配置
  • 5.2.3 通道配置交易
  • 5.2.4 在Peer节点上执行通道操作命令
  • 5.2.5 configtxgen工具
  • 5.3 排序节点管理
  • 5.3.1 Fabric区块链的共识算法
  • 5.3.2 排序节点上的通道管理
  • 5.3.3 配置排序节点
  • 5.4 客户端命令行工具CLI
  • 5.4.1 配置客户端
  • 5.4.2 通过CLI工具访问Fabric网络
  • 5.5 Fabric测试网络脚本解析
  • 5.5.1 启动测试网络
  • 5.5.2 创建通道
  • 5.5.3 向通道中添加组织
  • 5.5.4 更新通道配置
  • 5.5.5 将组织Org3的Peer节点加入网络
  • 5.6 本章小结
  • 习题
  • 第6章 数据存储与数据分发
  • 6.1 数据存储
  • 6.1.1 数据存储结构
  • 6.1.2 区块数据的存储
  • 6.1.3 交易数据的存储和查询
  • 6.1.4 状态数据库
  • 6.1.5 启用CouchDB作为状态数据库
  • 6.1.6 私有数据管理
  • 6.2 数据分发
  • 6.2.1 Gossip协议
  • 6.2.2 领导节点和锚节点在数据分发过程中的作用
  • 6.2.3 内部端点和外部端点
  • 6.3 本章小结
  • 习题
  • 第7章 部署Fabric生产网络
  • 7.1 从学习到实践的第一步
  • 7.1.1 从测试网络过渡到生产网络
  • 7.1.2 部署Fabric生产网络的步骤
  • 7.1.3 设计生产网络的结构和配置
  • 7.2 在生产网络中部署Fabric区块链的各组件
  • 7.2.1 创建资源集群
  • 7.2.2 搭建CA
  • 7.2.3 使用CA创建身份和MSP
  • 7.2.4 部署Peer节点
  • 7.2.5 部署排序节点
  • 7.3 在单机上搭建Fabric区块链集群
  • 7.3.1 实例的网络拓扑
  • 7.3.2 准备基础环境
  • 7.3.3 搭建Fabric区块链节点集群
  • 7.3.4 编写Docker Compose配置文件
  • 7.3.5 启动Docker容器
  • 7.3.6 配置Fabric生产网络
  • 7.4 本章小结
  • 习题
  • 第8章 Go语言编程基础
  • 8.1 Go语言概述
  • 8.1.1 Go语言的特色
  • 8.1.2 安装Go语言环境
  • 8.1.3 Go语言的项目目录
  • 8.1.4 Go语言IDE
  • 8.2 Go语言的常量、变量和数据类型
  • 8.2.1 常量
  • 8.2.2 变量
  • 8.2.3 数据类型
  • 8.3 常用语句
  • 8.3.1 赋值语句
  • 8.3.2 条件分支语句
  • 8.3.3 循环语句
  • 8.4 集合、数组和切片
  • 8.4.1 集合
  • 8.4.2 数组
  • 8.4.3 切片
  • 8.5 指针和接口
  • 8.5.1 指针
  • 8.5.2 接口
  • 8.6 通道编程
  • 8.6.1 Go语言的并发编程
  • 8.6.2 Go语言的通道编程
  • 8.7 JSON处理
  • 8.7.1 JSON简介
  • 8.7.2 Go语言JSON处理编程
  • 8.8 函数编程
  • 8.8.1 定义和使用函数
  • 8.8.2 在函数中传递参数
  • 8.8.3 在函数中返回多个值
  • 8.8.4 结构体类型和枚举类型的函数
  • 8.9 本章小结
  • 习题
  • 第9章 智能合约开发
  • 9.1 Fabric智能合约概述
  • 9.1.1 智能合约的基本概念
  • 9.1.2 链码的工作流程
  • 9.1.3 学习Go语言开发Fabric智能合约的前提条件
  • 9.1.4 智能合约编程基础
  • 9.2 编写智能合约程序
  • 9.2.1 导入contractapi包
  • 9.2.2 定义与账本交换数据的结构体
  • 9.2.3 智能合约函数编程
  • 9.3 链码编程与智能合约的测试
  • 9.3.1 在链码中使用智能合约
  • 9.3.2 在测试网络中部署链码
  • 9.3.3 在测试网络中调用链码
  • 9.4 交易编程
  • 9.4.1 交易处理函数的类型
  • 9.4.2 定义交易处理函数
  • 9.4.3 利用交易处理函数优化智能合约的代码
  • 9.4.4 未知处理函数调用
  • 9.5 在开发模式下运行链码
  • 9.5.1 搭建环境
  • 9.5.2 启动排序节点
  • 9.5.3 在开发模式下启动Peer节点
  • 9.5.4 创建通道
  • 9.5.5 在开发模式下构建链码
  • 9.5.6 启动链码
  • 9.5.7 批准和写入链码定义
  • 9.5.8 调用链码
  • 9.6 私有数据编程
  • 9.6.1 私有数据集的定义
  • 9.6.2 在链码中读/写私有数据
  • 9.6.3 私有数据编程示例程序
  • 9.7 本章小结
  • 习题
  • 第10章 客户端应用开发
  • 10.1 Fabric区块链客户端应用开发概述
  • 10.1.1 Fabric SDK Go概述
  • 10.1.2 安装Fabric SDK Go
  • 10.2 Fabric SDK Go的配置和依赖
  • 10.2.1 配置Fabric SDK Go
  • 10.2.2 管理Fabric SDK Go项目的依赖包
  • 10.3 使用Fabric SDK Go开发客户端应用
  • 10.3.1 Fabric SDK Go的开发包
  • 10.3.2 创建fabsdk实例
  • 10.3.3 通道客户端编程
  • 10.3.4 账本客户端编程
  • 10.3.5 资源客户端编程
  • 10.3.6 MSP客户端编程
  • 10.4 gateway开发模型
  • 10.4.1 概述
  • 10.4.2 连接配置文件
  • 10.4.3 通过网关调用链码
  • 10.5 本章小结
  • 习题
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。