最近实验室的项目要部署到fabric2.0以上版本,之前写的都是1.4的链码,现在看2.0版本的链码还是有些不一样的,主要是链码api改了:前提:如果想在fabric2.0以上环境中还是想用shim和peerAPI的话:也就是:这里记录一下我们在1.4链码中是需要初始化的,因为我们有些初始化的操作是写在Init方法中的,但是呢在2.0以上版本取消了链码的初始化操作,所以当我们在2.0以上环境中需要            
                
         
            
            
            
            前言(1)在搭建fabric之前要选好虚拟系统,本文基于Ubuntu22.04搭建的。 (2)fabric建议版本:1.4.X和2.2.X,因为朋友说这两个版本是比较稳定的版本。本文选择的版本:fabric2.2.5 (3)建议所有操作都在管理员模式下,至少本文是这样做的。本文通过“sudo -i”再输入密码进入管理员模式。一、fabric服务搭建换下载源、下载docker、docker-comp            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-02 15:44:46
                            
                                304阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            安装软件更新源sudo apt-get update安装Gocd /usr/local上传go的压缩包sudo rz解压压缩包sudo tar -zxf  go1.14.4.linux-amd64.tar.gz配置环境vim ~/.bashrcexport GOROOT=/usr/local/go
export GOPATH=/opt/gopath
export PATH=$PATH            
                
         
            
            
            
            目录前言1. 搭建跨链环境1.1 生成证书1.2 生成创世区块,应用通道配置交易文件和锚节点配置更新交易文件1.3 启动相应的容器1.4 创建网络2. 跨链关键技术2.1 API解读2.2 验证2.3 深入了解3. 跨链的实现4. 可商用的跨链方案3. 总结前言今天公司让我整理一个基于fabric的跨链的方案,之前没怎么接触过跨链,在这里记录下自己的思路吧。首先,先明白几个概念。什么是跨链?我的理            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-04 09:48:25
                            
                                91阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
                    1. 提交交易预案
1)应用端首先构建交易的预案,预案的作用是调用通道中的链码来读取或者写入账本的数据。应用端使用 Fabric 的 SDK 打包交易预案,并使用用户的私钥对预案进行签名。 应用打包完交易预案后,接着把预案提交给通道中的背书节点。通道的背书策略定义了哪些节点背书后交易            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2020-01-10 14:24:00
                            
                                271阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            现有的网络节点为: peer0.org1.example.com peer1.org1.example.com peer0.org2.example.com peer2.org2.example.com orderer.example.com 将增加的节点为: peer0.org3.example.com peer1.org3.example.com一、更新通道配置 1 为Org3 CA以及与此新            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-12-03 13:37:47
                            
                                285阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、 工作机制 1.  Transaction flow——交易流程  二、 术语 1.     Peer——节点名称角色含义功能描述Orderer1.0架构中的共识服务角色排序节点1.     对所有发往网络中的交易进行排序2.                 
                
         
            
            
            
            智能合约能够部署和运行在区块链环境中,由一段代码来描述相关的业务逻辑。部署后的智能合约在区块链中无法修改,智能合约的执行完全由代码决定,不受人为因素的干扰。一般来说,参与方通过智能合约规定各自权利和义务、触发合约的条件以及结果,一旦该智能合约在区块链环境中运行就可以得出客观、准确的结果。在 Fabric 中,智能合约也称为链码(chaincode),分为用户链码和系统链码,通常指的是用户链码。链码            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-12 14:26:58
                            
                                70阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、链码介绍在fabric中,与外界的操作,基本都是通过链码(智能合约)来实现,所以说,链码称为链应用对外的API是完全可以的。不过,此API非常见的那种开发的的API,它指用户编写的应用代码,外界可以通过部署其到Fabric上,完成和链的交互通信,将数据存储到链上或者查询链上存储的数据。它分为两大类,即系统链码和用户链码。系统链码就是随链安装就存在的,一般用来处理链节点自身功能的代码;用户链码是            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-14 21:03:06
                            
                                197阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在Fabric的Peer节点添加定制的系统链码Peer节点的默认系统链码调用默认的系统链码添加定制的系统链码创建自定义系统链码的目录及源代码在Peer节点的源码中添加对上述系统链的引用修改core.yaml编译Peer节点并测试编译Peer节点源码测试 Peer节点的默认系统链码Fabric的Peer节点的启动命令一般是peer node start,见下图所示。 这个命令启动Peer节点时,日            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-26 17:17:29
                            
                                87阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            声明:本文的分析是基于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
                            
                                66阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Fabric智能合约整体介绍,首先看一下Fabric交易流程 在这张图中,5、6步是public数据的步骤,7、8、9是private数据的步骤,除了这一部分外,其他步骤均相同。Fabric Chaincode简介        Fabric中智能合约称为链码(Chaincode),使用计算机语言描述合约条款            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-28 08:52:13
                            
                                20阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            什么是共识 什么是一致性? 分布式系统中,一致性是指对于系统中的多个服务节点,给定一系列操作,在协议(往往通过某种共识算法) 保障下,试图使得它们对处理结果达成某种程度的一致。如果分布式系统能实现“一致”,对外就可以呈现是一个功能正常的,性能和稳定性都要好很多的“虚处理节点”一致性并不代表结果正确与否,而是系统对外呈现的状态一致与否,例如,所有节点都达成失败状态也是一种一致 ,分布式系统实现了一致            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-08 22:48:25
                            
                                73阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            HyperLeger Fabric开发(六)——HyperLeger Fabric智能合约(ChainCode)一、链码(Chaincode)简介1、链码简介在Fabric中,智能合约也称为链码(chaincode),分为用户链码和系统链码。系统链码用来实现系统层面的功能,包括系统的配置,用户链码的部署、升级,用户交易的签名和验证策略等;用户链码用于实现用户的应用功能,开发者编写链码应用程序并将其            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-29 06:19:41
                            
                                138阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            Fabric2.0的重大变化之一就是支持外部构建智能合约,在1.x版本的Fabric中,合约是由Peer以容器的方式进行启动和维护,依赖于Docker。这在一定程度上违反了安全准则,并且在管理运维中带来了麻烦。Fabric 2.0支持用户自行启动合约容器。1.修改Peer节点配置(1)准备构建器与启动器脚本外部构建器(externalBuilder)和启动器由四个程序或脚本组成:bin/detec            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-28 14:02:30
                            
                                24阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一 前言Fabric Chaincode是智能合约在Fabric上的实现方式,是与Fabric区块链交互的唯一渠道,也是生成Transaction的唯一来源。  开发语言:go、java  本文中选用go  Fabric节点运行模式有两种:一般模式  Chaincode运行在docker容器里,这种方式开发调试过程非常繁杂:部署—调试—修改—创建docker镜像—部署—···开发模式  相对容易:            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-26 10:07:34
                            
                                49阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            以下要点需要对区块链有一定的了解,是总结性的一些概述:Fabric是一个应用于企业的区块链平台,或者说是一种联盟链(Consortium Blockchain)平台,适合在多个企业之间建立去中心化的应用。Fabric和比特币,以太坊等公链平台有明显的差异,它借鉴了区块链的数据结构,但同时有着非常多的身份验证,权限控制和数据隐私保护机制——为了满足企业应用的需求。由于不是完全开放的公链的环境,联盟链            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-11 09:24:40
                            
                                0阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            作为区块链应用开发人员,智能合约的开发是必不可少的,在Hyperledger Fabric中,智能合约又称为链玛(chiancode)。 链码的概念链码又称之为链上代码,一般由开发人员使用Golang(java或nodejs)编写,提供分布式账本的状态处理逻辑。链码被部署在Hyperledger Fabric的网络节点上,能够独立运行在安全且受保护的Docker容器中,以gRPC协议与相            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-30 00:01:12
                            
                                77阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            联盟链搭建我是在Ubuntu16.04环境下安装的一、安装Docker (注意:在安装Docker之前首先需要检查ubuntu 内核版本我是4.13)1)切换到root用户下$ su root 2)$ uname -r 3)验证是否安装了curl$ which curl 备注:如果没有安装则进行安装,具体安装如下:$ sudo apt-get update            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-25 10:09:07
                            
                                44阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            区块链技术名词 区块链离不开一下三个名词 交易 ,所谓就是一次状态转移操作 针对来说,是一次转帐,一次操作,在fabric当中可以理解成是一次键值对的增删改查 其次是区块 区块是指交易的集合,在一个区块链网络中,某个节点将它某个时间段内所有的数据打包就行程了一个区块 最后是链 所谓的链是区块的顺序排列,程序员对链是相当熟悉,是单链表,双链表,而区块链是典型的单链表结构, 一个区块有一个哈希,后一个