1. 应用开发模型
2. 应用程序开发的SDK
2.1 概述
HFC(Hyperledger Fabric Client)是提供给应用程序开发的SDK,提供了gRPC连接的API。
2.2 SDK规范
SDK定义了两种模块的接口:一个是访问fabric-ca的接口,一个是访问Fabric的接口。其中fabric-ca模块是可选的,可以选用其他成熟的第三方CA系统。官方提供了如下几种语言的SDK实现。
Golang:https://github.com/hyperledger/fabric-sdk-go
Node.js:https://github.com/hyperledger/fabric-sdk-node
Python:https://github.com/hyperledger/fabric-sdk-py
Java:https://github.com/hyperledger/fabric-sdk-java
(1)FabricClient模块
FabricClient是应用程序的入口模块,提供通道管理、链码管理、数据存储、密码学相关的功能。每个FabricClient实例对应一个区块链的网络,包括记账节点、排序节点等。
(2)Config模块
初始化FabricClient的时候需要离线获取配置信息,包括可信的根证书、排序服务节点证书和IP地址、记账节点证书和IP地址等,配置模块Config读取后传递给FabricClient。
(3)Channel模块
通道是排序服务创建的隔离不同链上交易的实例,加入到不同通道的节点接收到的是不同的交易。通道在配置了排序服务节点和Peer节点后需要初始化,初始化的时候给排序服务节点发送获取配置区块的请求。
(4)Peer模块
Peer节点是HFC模块发送背书请求、交易查询的节点。Peer实例包含了节点名称、地址角色、注册证书(ECert)等信息。
(5)Orderer模块
Orderer节点是HFC模块发送交易进行排序的节点。Orderer实例包含了排序服务节点地址信息,定义了发送原子广播请求和获取区块的接口。
有疑问加站长微信联系(非本文作者)