Hyperledger Fabric(三)—— Fabric智能合约

Fabric 智能合约

  • 执行环境:以太坊虚拟智能合约执行环境EVM,fabric执行环境是docker。
  • 链码:
  1. 是应用层和区块链底层的中间点。
  2. 每一个链码执行环境是一个独立的docker
  3. 使用GPRC协议与背书节点通信,只有背书节点才能运行智能合约
  • 链码得到生命周期
  1. 打包,智能合约的编写和编译。
  2. 安装,将打包好的文件,上传到背书节点。
  3. 实例化,实际的安装了,执行Init方法,只执行一次,类似于构造函数。
  4. 升级,升级和修复链码。
  5. 交互,自己定义的方法的调用。
  • 链码的交互流程

网络搭建配置的实现

  • crypto-config.yaml :用于配置组织节点的个数,参考firstnetwork去编写
  • configtx.yaml:用于区块联盟中的组织信息,配置名字和证书等的位置,参考firstnetwork去编写。编写完后,传到linux对应目录。

       

  • 进入deploy目录,设置工作目录为当前目录。

       

  • 按照这个yaml文件生成配置。
  • 创建用于存放配置的目录

       

  • 生成系统连的创世区块
  • -profile指定联盟配置,outputBlock指定存放的位置。

       

  •  生成通道的创世交易
  • profile指定业务联盟,outputCreateChannelTx存放的路径,创建的名字叫mychannel:
  • 生成两个组织锚节点的交易信息
  •  将docker-compose.yaml拖进deploy目录

       

 

启动网络

  • 启动docker,后台运行

      

 

  • 查看orderer节点的运行日志

       

  • 与客户端交互操作

        

  • 创建通道
  • -o指定与哪个orderer节点通信,-c指定创建的通道名称,-f指定使用的文件

         

  • 加入通道

         

  • 查看peer加入的通道列表

        

  • 指定主节点

         

 基本的网络搞定了

安装链码

-n 是安装的名字,-v是version,-l是使用语言

  • 克隆一个会话,交互执行peer0,查看安装的链码

  • 链码实例化

  • 链码交互执行

  • 多次执行查询,得到的结果不用,因为invoke()中使用了随机数,不要这么做
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值