Hyperledger Fabric 智能合约开发 (1)链码

1. 概念

基于区块链的应用,一般都由部署在区块链上的智能合约以及调用这些智能合约的业务程序组成,智能合约又称为链码(Chaincode),是一段运行在容器中的程序。

  • Chaincode 是客户端程序和区块链网络之间沟通的桥梁
  • Chaincode 在 Fabric 节点上的 Docker 容器中运行
  • 通过 gRPC 协议来与各个节点通信。
  • 用来修改记录在链上的状态,状态一般记录着与业务相关的数据,通过调用智能合约,应用程序可以发起和记录交易,从而实现复杂的业务逻辑。

2. 业务流程
Hyperledger Fabric 智能合约开发 (1)链码_第1张图片

  • 用户
    关注与业务逻辑相关的应用程序。
  • CA 机构
    根据标准 PKI 规范生成权限证书的机构,生成账号和颁发证书。
  • 智能合约

3. 框架流程

step1:. 客户端(App)使用 SDK 和区块链网络进行交互,客户端首先从 CA 机构获取证书加入通道。
step2. 将交易提案提交给 Endorser 节点进行背书;背书节点完成背书操作后回复App
step3. App获得一定量的 Endorser 支持后,生成交易请求,发送给 Orderer
step3. Orderer 节点进行排序操作,构造区块之后将交易区块发送至 Committer 节点
step4. commit监听网络事件,执行合法交易并将交易信息记录到账本中。

  • Committer 节点
    在网络中维护区块链网络和账本数据;
  • Orderer 节点
    用于对交易请求排序,并将排序后的交易组合生成区块结构;

Hyperledger Fabric 智能合约开发 (1)链码_第2张图片

你可能感兴趣的:(Hyperledger,Fabric)