随书资源

目录
第1章区块链技术概述

1.1区块链核心概念与原理

1.1.1区块链及发展历史

1.1.2区块链运作机制

1.2区块链的分类与比较

1.2.1按准入机制分类

1.2.2按对接类型分类

1.2.3按独立程度分类

1.2.4按应用范围分类

1.2.5按层级关系分类

1.3区块链技术架构的演变

1.3.1区块链1.0

1.3.2区块链2.0

1.3.3区块链3.0

1.4区块链应用场景

小结

习题

第2章分布式存储技术

2.1HDFS

2.1.1HDFS概述

2.1.2HDFS架构

2.1.3HDFS数据存储

2.1.4HDFS数据读取

2.1.5数据错误与恢复

2.2Storj

2.2.1Storj概述

2.2.2Storj架构

2.2.3Storj用户端上传文件流程

2.2.4Storj用户端下载文件流程

2.2.5Storj数据冗余 

2.3IPFS

2.3.1IPFS概述


2.3.2IPFS分层架构

2.3.3IPFS数据存取

2.4Filecoin

2.4.1Filecoin概述

2.4.2Filecoin架构

2.4.3Filecoin的运行机制

2.5分布式文件系统的比较

2.5.1整体架构比较 

2.5.2持久性比较

2.5.3伸缩性比较 

小结

习题





第3章区块链核心密码学技术

3.1哈希算法

3.1.1哈希函数简介

3.1.2SHA256算法

3.2Merkle树(默克尔树)

3.2.1Merkle树基本概念

3.2.2Merkle树构造过程

3.2.3Merkle树检索过程

3.3数据加密技术

3.3.1非对称加密

3.3.2数字签名

3.3.3时间戳技术

3.3.4零知识证明

3.4数字签名算法

3.4.1RSA数字签名算法

3.4.2DSA(数字签名算法)

3.4.3ECDSA

3.5PKI

3.5.1PKI简介

3.5.2PKI组成

3.5.3PKI相关标准

3.5.4PKI关键技术

3.5.5PKI功能

小结

习题

第4章区块链常见共识算法

4.1问题与挑战

4.1.1区块链共识机制

4.1.2两军问题

4.1.3拜占庭将军问题

4.2共识算法分类

4.3常用共识算法

4.3.1PoW算法

4.3.2PoS算法

4.3.3DPoS算法

4.3.4PBFT算法

4.3.5Raft算法

4.3.6共识算法比较

小结

习题

第5章超级账本开源项目

5.1超级账本项目简介

5.2超级账本浏览器

5.2.1超级账本浏览器部署

5.2.2使用区块链浏览器

小结

习题

第6章Fabric入门

6.1Fabric概述

6.1.1Fabric面向企业应用的特点

6.1.2Fabric逻辑架构

6.1.3Fabric运行时架构

6.2Fabric核心概念

6.2.1Fabric网络

6.2.2节点

6.2.3账本

6.2.4组织、联盟与通道

6.2.5网络与通道配置

6.2.6策略

6.2.7智能合约和链码

6.3Fabric用户注册和交易流程

6.3.1用户注册

6.3.2交易流程详解

小结

习题

第7章实践环境准备

7.1准备基本环境

7.1.1虚拟机软件安装

7.1.2Ubuntu 18.04操作系统安装

7.1.3VMware Tools安装

7.2安装工具软件

7.2.1Git

7.2.2cURL

7.2.3Docker和DockerCompose

7.2.4Go

7.2.5Node.js和NPM

7.3安装Fabric运行环境

7.3.1拉取Fabric项目

7.3.2安装Fabric示例

7.4运行Fabric测试网络

7.4.1启动测试网络

7.4.2查看测试网络节点

7.4.3创建通道并安装链码

7.4.4网络交互

7.4.5关闭网络

小结

习题

第8章Fabcar应用程序解析

8.1业务场景

8.1.1业务场景描述

8.1.2业务接口分析

8.2建立并启动区块链网络

8.2.1生成组织结构与身份证书

8.2.2生成通道配置文件

8.2.3Docker配置与启动

8.2.4通道创建与节点加入

8.2.5动态添加与移除组织和节点

8.3Fabcar智能合约安装与部署

8.3.1智能合约开发

8.3.2智能合约打包安装

8.3.3智能合约调用测试

8.4注册用户

8.4.1注册管理用户

8.4.2注册应用程序用户

8.5链下应用程序

8.5.1调用invoke.js接口

8.5.2调用query.js接口

小结

习题

第9章智能合约开发详解

9.1智能合约简介

9.1.1智能合约概述

9.1.2智能合约运行机制

9.2智能合约开发

9.2.1智能合约基本结构

9.2.2shim接口函数

9.2.3智能合约开发注意事项

9.3智能合约开发实例

9.3.1项目背景

9.3.2角色分析

9.3.3业务场景分析

9.3.4功能需求分析

9.3.5区块链网络规划和设计

9.3.6智能合约的业务接口设计

9.3.7智能合约实现

9.3.8智能合约部署和系统运行

小结

习题

第10章公益捐助平台

10.1系统分析

10.1.1项目背景

10.1.2角色分析

10.1.3业务场景分析

10.1.4需求分析

10.2系统总体设计

10.2.1区块链网络规划设计

10.2.2智能合约设计

10.3智能合约实现与部署

10.3.1智能合约的实现


10.3.2智能合约的部署

10.4系统运行

小结

习题

第11章CAD图纸多人协同设计系统

11.1系统分析

11.1.1项目背景

11.1.2业务场景分析

11.1.3需求分析

11.2系统总体设计

11.2.1区块链网络规划设计

11.2.2智能合约设计

11.3智能合约的实现与部署

11.3.1智能合约的实现

11.3.2智能合约的部署

11.4系统运行

小结

习题

第12章IoT设备管理平台

12.1系统分析

12.1.1项目背景

12.1.2角色分析

12.1.3业务场景分析

12.1.4功能需求分析

12.2系统总体设计

12.2.1区块链网络设计

12.2.2智能合约设计

12.3智能合约的实现与部署

12.3.1智能合约的实现

12.3.2智能合约的部署

12.4IoT设备管理平台系统运行

12.4.1初始化时尚中心的管理员

12.4.2管理员注册时尚中心设备权限项信息

12.4.3注册用户信息

12.4.4绑定用户权限信息

12.4.5用户上传和查询设备的基础信息

小结

习题

附录A基于SHA256算法实现的Merkle树代码(Java语言版)

参考文献

开源项目