Hyperledger Fabric 链码(1) 类型

1. 用户链码

  • 由应用开发人员编写(Go/Java/JS语言)
  • 基于区块链分布式账本的状态及处理逻辑运行在链码容器中, 通过Fabric提供的接口与账本平台进行交互.

2. 系统链码(ESCC)

  • 负责Fabric节点自身的处理逻辑, 包括系统配置、背书、校验等工作。
  • 系统链码仅支持Go语言, 在Peer节点启动时会自动完成注册和部署。

2.1 系统链码分为5种类型

  • 配置系统链码(CSCC) Configuration System Chaincode 负责账本和链的配置管理
  • 背书管理系统链码(ESCC) Endorsement System Chaincode负责背书(签名)过程, 并可以支持对背书策略进行管理,对传入的链码提案的模拟运行结果进行签名, 之后创建响应消息返回给客户端
  • 生命周期系统链码(LSCC) Lifecycle System Chaincode负责对用户链码的生命周期进行管理, 链码生命周期包括安装、部署、升级、权限管理、获取信息等环节
  • 查询系统链码(QSCC)QSCC: Query System Chaincode负责提供账本和链的信息查询功能
  • 验证系统链码(VSCC)VSCC: Verification System Chaincode交易提交前根据背书策略进行检查验证过程:
    step1. 首先解析出交易结构, 并对交易结构格式进行校验
    step2. 检查交易的读集合中元素版本跟本地账本中版本一致
    step3. 检查带有合法的背书信息(主要是检查签名信息)
    step4. 通过则返回正确, 否则返回错误消息
上一篇:Hyperledger fabric 区块结构、交易结构


下一篇:Ubuntu20.04搭建Hyperledger Fabric 2.2.2