title: HyperLedger Fabric Chaincode()介绍和使用 tags: 区块,HyperLedger Fabric,Chaincode是什么?        也称为智能合约,实质上是控制区块网络中的不同实体或相关方如何相互交互或交易的业务逻辑。  &nbsp
Fabric部署基础篇 通过本文,读者将对fabric有个基本的感性认识,不需要任何配置,就可以部署第一个简单的Fabric网络[1]。一、环境说明主机操作系统不限,网络搭建在虚拟机中,所有跟Fabric相关的操作系统一律使用CentOS 7.5或更高版本。目前CentOS最高版本是7.6,下载地址http://mirrors.zju.edu.cn/centos/7.6.1810/iso
代码及说明参考网址:https://hyperledger-fabric.readthedocs.io/en/latest/chaincode4ade.html每个调用函数都会传递进去一个交易上下文对象"ctx",该对象通过GetStub()获取stub对象可以进一步去访问账本。下列的案例实现一个资产管理,包含对资产账本的创建、初始化、读、更新、删除,检查一个资产是否存在,把资产从一个拥有
一 使用测试环境 附上caliper官方文档 https://hyperledger.github.io/caliper/v0.3.2/getting-started/ caliper托管的GitHub仓库 https://github.com/hyperledger/caliper-benchmarks 1 安装必要的工具 g++ apt -y in
原创 2021-12-03 10:27:12
1437阅读
Fabric的Peer节点添加定制的系统Peer节点的默认系统调用默认的系统添加定制的系统创建自定义系统的目录及源代码在Peer节点的源码中添加对上述系统的引用修改core.yaml编译Peer节点并测试编译Peer节点源码测试 Peer节点的默认系统Fabric的Peer节点的启动命令一般是peer node start,见下图所示。 这个命令启动Peer节点时,日
声明:本文的分析是基于fabric 1.4.0版本,其它版本实现类似,具体可以参考本文。N久前,在一次误操作后,调用失败,返回信息如下:Error: endorsement failure during invoke. response: status:500 message:"failed to execute transaction a8025cd90781b2d907749adcc558
转载 2024-05-09 14:09:28
69阅读
一 前言Fabric Chaincode是智能合约在Fabric上的实现方式,是与Fabric区块交互的唯一渠道,也是生成Transaction的唯一来源。 开发语言:go、java 本文中选用go Fabric节点运行模式有两种:一般模式 Chaincode运行在docker容器里,这种方式开发调试过程非常繁杂:部署—调试—修改—创建docker镜像—部署—···开发模式 相对容易:
转载 2024-03-26 10:07:34
49阅读
HyperLeger Fabric开发(六)——HyperLeger Fabric智能合约(ChainCode)一、(Chaincode)简介1、简介在Fabric中,智能合约也称为(chaincode),分为用户和系统。系统用来实现系统层面的功能,包括系统的配置,用户的部署、升级,用户交易的签名和验证策略等;用户用于实现用户的应用功能,开发者编写应用程序并将其
转载 2024-05-29 06:19:41
141阅读
今天写了一个图片查看控件。初步功能具有移动,缩放效果。并且限制了移动的范围,使它不能完全移出边界。放大倍数限制默认给了4,有特别需要的同学可以自己修改,给个自定义参数来设置。双击图片能还原回初始大小和中间对齐的状态。效果图如下:上面是初始中间对齐状态。这个是移动状态这个是缩放状态。好了,下面贴上代码:package com.example.huangyi.test.widge; import a
前情提要虽然可以搭建2的网络,但是教程较少,很多网上的教程都还是1.4的,就算有2的教程也因为大家从1过来的,导致信息很少,坑比较多。所以为了快速进入开发,我还是走老路吧,教程多,把2作为后续升级过程。 教程搜到的1.4的十分多,所以应该可以很快学会。开始吧!开始思路:先来搜博客,然后再看官方。 再提一下,https://www.jianshu.com/p/813621eff343,这个博
作为区块应用开发人员,智能合约的开发是必不可少的,在Hyperledger Fabric中,智能合约又称为玛(chiancode)。 的概念又称之为上代码,一般由开发人员使用Golang(java或nodejs)编写,提供分布式账本的状态处理逻辑。被部署在Hyperledger Fabric网络节点上,能够独立运行在安全且受保护的Docker容器中,以gRPC协议与相
转载 2024-05-30 00:01:12
77阅读
1.智能合约执行环境:以太坊虚拟智能合约执行环境EVM,fabric执行环境是docker是应用层和区块底层的中间点每一个执行环境是一个独立的docker使用GRPC协议与背书节点通信,只有背书节点才能运行智能合约的生命周期打包:智能合约的编写和编译安装:将打包好的文件,上传到背书节点实例化:实际安装,执行Init方法,只执行一次,构造函数升级:升级和修复交互:自己定义的方法的调
转载 2024-08-10 14:23:48
24阅读
  在Hyperledger Fabric中,分为两种类型:系统和普通。其中系统是系统内置的,用来完成一些系统功能等;普通是实现应用业务逻辑的。系统vs普通  系统和普通的几个不同点,如下表所示:对比项系统普通源码无main函数有main函数运行空间背书节点进程Docker调用方式网络+进程内部网络启动参数内置动态输入通信方式Golang的通
的编写前言:fabric的编写较简单,在熟悉了基本结构和相关API之后就可上手编写,但是要多多练习,提高编写的速度和正确度。学习步骤:1.熟悉的基本结构2.熟练相关API3.练习,练习,练习参考链接:1.的基本结构的启动必须通过调用shim包中的Start函数,传递一个类型为Chaincode的参数,该参数是一个接口类型,有两个重要的函数Init和Invoke函数,(即
想写点东西记录一下最近看的一些Fabric源码,本文使用的是fabric1.4的版本,所以对于其他版本的fabric,内容可能会有所不同。 本文想针对Fabric容器的启动过程进行源码的解析。这里的指的是用户不是系统,顺便回顾一下系统:lscc(Life Cycle System ChainCode)生命周期系统cscc(Configuration System Chai
转载 2023-10-20 21:58:49
160阅读
一直以来,写完进行测试都要先搭建一个Fabric环境,然后安装进行测试,实际上Fabric提供了最为简单的方式可以允许我们对编写的应用进行功能测试,不需要搭建一个完整的Fabeic环境。而且测试完直接停止网络也不会担心有残余的文件没有删除干净,以至于搭建正式环境的时候出现各种错误。 进入正题好了,Fabric提供了一个开发模式,是专门用来对进行测试用的。其实,这些内容在Fabric
转载 2024-05-29 00:24:16
76阅读
智能合约能够部署和运行在区块链环境中,由一段代码来描述相关的业务逻辑。部署后的智能合约在区块中无法修改,智能合约的执行完全由代码决定,不受人为因素的干扰。一般来说,参与方通过智能合约规定各自权利和义务、触发合约的条件以及结果,一旦该智能合约在区块链环境中运行就可以得出客观、准确的结果。在 Fabric 中,智能合约也称为(chaincode),分为用户和系统,通常指的是用户
转载 2024-03-12 14:26:58
73阅读
一、介绍在fabric中,与外界的操作,基本都是通过(智能合约)来实现,所以说,称为应用对外的API是完全可以的。不过,此API非常见的那种开发的的API,它指用户编写的应用代码,外界可以通过部署其到Fabric上,完成和的交互通信,将数据存储到上或者查询上存储的数据。它分为两大类,即系统和用户。系统就是随安装就存在的,一般用来处理节点自身功能的代码;用户
转载 2024-05-14 21:03:06
197阅读
Fabric智能合约整体介绍,首先看一下Fabric交易流程 在这张图中,5、6步是public数据的步骤,7、8、9是private数据的步骤,除了这一部分外,其他步骤均相同。Fabric Chaincode简介        Fabric中智能合约称为(Chaincode),使用计算机语言描述合约条款
Fabric2.0的重大变化之一就是支持外部构建智能合约,在1.x版本的Fabric中,合约是由Peer以容器的方式进行启动和维护,依赖于Docker。这在一定程度上违反了安全准则,并且在管理运维中带来了麻烦。Fabric 2.0支持用户自行启动合约容器。1.修改Peer节点配置(1)准备构建器与启动器脚本外部构建器(externalBuilder)和启动器由四个程序或脚本组成:bin/detec
转载 2024-04-28 14:02:30
24阅读
  • 1
  • 2
  • 3
  • 4
  • 5