07.Fabric的智能合约详解 您所在的位置:网站首页 fabric共识机制是写在哪里的 07.Fabric的智能合约详解

07.Fabric的智能合约详解

2024-07-14 20:56| 来源: 网络整理| 查看: 265

导语

智能合约是区块链中一个非常重要的概念和组成部分。在Fabric中内成为Chaincode,中文翻译为链码。涉及到链码地方都是 Chaincode.

7.1 Chaincode 初探

Fabric中的Chaincode包含了一个Chaincode代码和Chaincode管理命令这两部分。

Chaincode 代码是业务的承载体,负责具体的业务逻辑 Chaincode 管理命令负责 Chaincode的部署,安装,维护等工作 1.Chaincode代码

Fabric的Chaincode是一段运行在容器中的程序。Chaincode是客户端程序和Fabric之间的桥梁。

通过Chaincode客户端程序可以发起交易,查询交易。

Chaincode是运行在Dokcer容器中,因此相对来说安全。

目前支持 java,node,go,go是最稳定的。其他还在完善。

2.Chaincode的管理命令

Chaincode管理命令主要用来对Chaincode进行安装,实例化,调用,打包,签名操作。

Chaincode命令包含在Peer模块中,是peer模块中一个子命令, 该子命令的名称 是chaincode.该子命令是 peer chaincode

7.2 快速编写和运行一个Chaincode 1.创建一个Chaincode代码的目录

首先创建一个目录存放Chaincode的代码。建议放在$GOPATH指定的路径中。 s

2.创建 Chaincode源代码文件并且编写源代码

在创建域代码文件的命令如下: 在这里插入图片描述 在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

第一步 部署 在这里插入图片描述 第二步 实例化 在这里插入图片描述 第三步 调用 在这里插入图片描述 如果 没有出现错误,那我们就完完成了一个最简单的chaincode的代码编写部署,发布,调用的过程。 7.3 Golang版本的Chaincode的代码结构

真的勇士敢于直面惨淡的人生,敢于正视淋漓的鲜血

7.3.1 Chaincode源代码的基本结构 1.包名 一个chaincode通常是一个 Goalng源文件,包名必须是main package main 2.引入包

Chaincode需要引入一个写Fabric提供的一些系统包,这些系统提供了Chaincode和Fabric进行通信的接口。 232 在引入包中, shim提供了Fabric系统



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有