1.智能合约

  • 执行环境安全隔离、不受第三方干扰
  • 链码
    • 是fabric应用层的基石,是应用层与底层的桥梁
    • 执行环境是一个独立的docker环境
    • 通过gRPC协议与背书节点连接,只有背书节点才会运行链码
  • 链码的生命周期
    • 打包
    • 安装
    • 实例化
    • 升级
    • 交互
  • 链码的交互流程
    2.06 hyperledger fabric智能合约_GO语言
  • 系统链码
    • LSCC(Lifecycle System Chaincode),用于管理链码的生命周期
    • CSCC(Configuration System Chaincode),是配置管理链码
    • QSCC(Query System Chaincode),用于查询账本存储
    • ESCC(Endorsement System Chaincode),交易背书链码
    • VSCC(Validation System Chaincode),用作交易验证
  • 链码编程接口
    • Init()
    • Invoke()
  • 例子示范
    • fabric_asset/chaincode/badexample/badexample.go

2.网络搭建配置的实现

  • 配置文件准备
    • 设置工作路径
      2.06 hyperledger fabric智能合约_区块链_02
    • 进入配置文件目录
      2.06 hyperledger fabric智能合约_区块链_03
    • 生成证书文件
      2.06 hyperledger fabric智能合约_GO语言_04
    • 可以查看生成的证书
      2.06 hyperledger fabric智能合约_区块链_05
    • 创建目录
      2.06 hyperledger fabric智能合约_区块链_06
    • 生成系统链的创世区块
      2.06 hyperledger fabric智能合约_GO语言_07
    • 生成通道的创世交易
      2.06 hyperledger fabric智能合约_GO语言_08
    • 分别生成两个组织关于通道的锚节点交易
      2.06 hyperledger fabric智能合约_GO语言_09
      2.06 hyperledger fabric智能合约_GO语言_10
  • 网络启动
    • 启动网络
      2.06 hyperledger fabric智能合约_GO语言_11
    • 查看orderer节点日志
      2.06 hyperledger fabric智能合约_GO语言_12
    • 查看peer节点日志
      2.06 hyperledger fabric智能合约_GO语言_13
  • 初始化和操作链码
    • 进入client进行初始化操作
      2.06 hyperledger fabric智能合约_GO语言_14
    • 创建通道
      2.06 hyperledger fabric智能合约_区块链_15
    • 加入通道
      2.06 hyperledger fabric智能合约_GO语言_16
    • 设置主节点
      2.06 hyperledger fabric智能合约_GO语言_17
    • 安装链码
      2.06 hyperledger fabric智能合约_GO语言_18
    • 查看安装的链码
      2.06 hyperledger fabric智能合约_区块链_19
    • 查看链码版本
      2.06 hyperledger fabric智能合约_区块链_20
    • 链码实例化
      2.06 hyperledger fabric智能合约_GO语言_21
    • 查看镜像
      2.06 hyperledger fabric智能合约_GO语言_22
    • 查看部署的链码日志
      2.06 hyperledger fabric智能合约_GO语言_23
    • 链码查询
      2.06 hyperledger fabric智能合约_区块链_24
      2.06 hyperledger fabric智能合约_区块链_25