Hyperledger Composer 是一组基于 JavaScript 的工具和脚本,可简化Hyperledger Fabric 网络的创建过程。...类似于现实生活中的身份证,Fabric 网络中的参与者都有业务网络访问卡。...Fabric 是区块链的底层,PeerAdmin 业务网络访问卡的持有者可以在此 Fabric 运行环境中部署、删除和管理区块链业务网络。 如果一切顺利,你应该会看到这样的输出: ?...--file 获取业务网络访问卡生成文件的名称,访问卡可由以下命令导入: 1composer card import --file cards-trading-admin.card 再、再一次bingo...你使用 Hyperledger Fabric 和 Hyperledger Composer 成功创建了一个附带客户端程序的区块链业务网络。
在Hyperledger Fabric区块链中可以有多个Kafka节点,使用zookeeper进行同步管理。...如果希望快速掌握Fabric区块链的链码及应用开发,建议访问汇智网的在线互动课程: Fabric区块链Java开发详解 Fabric区块链NodeJs开发详解 一、Kafka工作原理 Kafka本质上是一个消息处理系统...在zookeeper中存储的元数据包括: 消费者分组在每个分区的读取偏移量 访问控制清单,用于访问授权与限制 生产者及消费者配额,每秒最多消息数量 分区领导者及健康信息 二、Hyperledger Fabric...中的Kafka 要理解在超级账本Hyperledger Fabric中的Kafka是如何工作的,首先需要理解几个重要的术语: Chain - 指的是一组客户端(通道/channel)可以访问的日志 Channel...执行配置交易的过滤与验证,实现通道的重新配置或创建新的通道 RPC - 即远程过程调用(Remote Procedure Call),是一种用于调用其他机器上的服务而无需了解 通信与实现细节的通信协议,目的是像调用本地函数一样调用网络中其他机器上的函数
Hyperledger Fabric Hyperledger Fabric(HLF)是 Hyperledger Greenhouse的一部分,是企业级的分布式账本技术,支持隐私保护,允许大量的即插即用功能...在基于EVM的网络上,我们有Hyperledger Besu和Quorum。另一方面,Hyperledger Fabric只有一个实现。它没有类似于基于EVM链的客户端。...当我们指的是Hyperledger Fabric客户端时,我们将指的是Linux 基金会组织的唯一实现。...组成大型联盟的公司倾向于使用 Hyperledger Fabric 网络。另一方面,我们有一些用例是仅将 Hyperledger Fabric 网络用于内部流程,而没有任何外部组织。...与部署基于EVM的网络相比,部署、配置和维护Hyperledger Fabric网络的成本往往更高,这就是为什么我们看到较小的项目使用企业级以太坊而不是Hyperledger Fabric。
###Fabric 功能 Hyperledger Fabric 是分布式帐本(DLT)的一个独特实现,采用模块化区块链架构,其提供了企业所需的网络安全、可扩展性、保密性和性能。...Modular design 模块化设计 Hyperledger Fabric实现了模块化设计,网络设计者能根据需求选择功能。比如特定的识别、共识、加密算法可以插入任何 fabric网络。...Chaincode仅安装在需要获取资产状态来执行读写操作的peers(换句话说,如果一个chaincode没有安装一个peer,它将不能与账本交互)。...Security & Membership Services 安全和成员服务 Hyperledger Fabric 加强了交易网络,所有参与者都有已知的身份。...因此,数据访问控制可以在网络和channel层面进行操作和管理。Fabric的“许可”概念,加上channel的存在和功能,有助于解决隐私和机密性至关重要的场景。
Hyperledger Fabric private data是1.2版本引入的新特性,fabric private data是利用旁支数据库(SideDB)来保存若干个通道成员之间的私有数据,从而在通道之上又提供了一层更灵活的数据保护机制...如果要快速掌握hyperledger fabric区块链的开发,推荐汇智网的在线互动实战教程: Hyperledger Fabric 区块链开发详解 Hyperledger Fabric java...区块链开发详解 fabric private data用例 我们使用Hyperledger Fabric中经典的fabcar案例来展示如何使用私有数据集。...fabric private data数据集配置 我们首先需要一个数据集配置文件collections_config.json,它包含了私有数据集名称和访问策略。...fabric private data链码最佳实践 当然,我们的数据中有一部分是Hyperledger Fabric网络中的任何人都看得到的。
4.Init函数,在实例化Chaincode时调用。 5.Invoke函数,当用户想要调用函数(1)(2)或(3)时调用。...Invoke函数用于接收所有用户函数调用,然后根据Invoke调用(调用)相应的函数(1)(2)或(3)。它就像一个路由器 ,将传入的请求路由到不同的路径。...; import org.hyperledger.fabric.shim.ChaincodeBase; import org.hyperledger.fabric.shim.ChaincodeStub;...5.4 访问Cli 有一个自动创建的cli Docker容器,它是一个控制节点的命令行界面。...这些环境变量用于让一些Hyperledger Fabric程序知道我们需要使用peer0.org1.example.com:7051来调用Chaincode函数。
这为连接到Fabric网络的客户端提供了灵活的数据访问。 使用Composer添加更简单的概念 Hyperledger-Composer是Hyperledger生态系统中的工具之一。...通过描述的脚本,我们可以在Docker-Compose中启动一个简单的Fabric网络,获得对等管理员访问权限并停止并再次删除它。...它使用composer-cli的所有托管配置并访问正在运行的Fabric网络。从现在开始,我们将Fabric视为可配置的平台/基础架构,其状态通过合适的工具进行更改。...我们定义常量modelsNamespace和函数uuid,因为我们将更频繁地需要它们。接下来是createEngineAsset函数。...函数上方的文档块非常重要,以便Composer可以识别打包代码时实现的交易类型。
目前在Hyperledger Fabric中实现数据隐私的方法是使用通道。...这就是Hyperledger Fabric引入私有交易的原因。farbic private data允许基于策略创建私有数据集,来定义通道中的哪些成员可以访问数据。...fabric private data用例 我们使用Hyperledger Fabric中经典的fabcar案例来展示如何使用私有数据集。initLedger函数将在我们的数据集中创建10个新车。...fabric private data数据集配置 我们首先需要一个数据集配置文件collections_config.json,它包含了私有数据集名称和访问策略。...如果要快速掌握hyperledger fabric区块链的开发,推荐汇智网的在线互动实战教程: Hyperledger Fabric 区块链开发详解 Hyperledger Fabric java
- 版本8.9.x或更高 安装Node.js将会安装NPM,但是,建议你确认安装了NPM的版本,你可以使用以下命令升级npm工具: npm install npm@5.6.0 -g Python 以下仅适用于...如果你有本文档未解决的问题,或者遇到任何教程中的问题,请访问仍然有问题?页面,获取关于在何处找到额外帮助的一些提示。...如果你有本文档未解决的问题,或者遇到任何教程中的问题,请访问仍然有问题?页面,获取关于在何处找到额外帮助的一些提示。...Hyperledger Fabric SDKs Hyperledger Fabric提供了许多SDK来支持各种编程语言,官方发布了两款针对Node.js和Java的SDK: Hyperledger Fabric...SDK Hyperledger Fabric REST SDK Hyperledger Fabric CA Hyperledger Fabric提供一个可选的证书授权服务,你可以选择使用该服务生成证书和密钥材料
Hyperledger Fabric PHP SDK是社区提供的用于Hyperledger Fabric区块链应用 开发的软件包,其目的在于为PHP应用提供访问Hyperledger Farbic区块链的能力..., 例如:创建通道、安装链码、访问链码等等。...如果希望快速掌握Fabric区块链的链码及应用开发,建议访问汇智网的在线互动课程: Fabric区块链Java开发详解 Fabric区块链NodeJs开发详解 Hyperledger Fabric...PHP SDK的源代码仓库地址:https://github.com/americanexpress/hyperledger-fabric-sdk-php 1、Hyperledger Farbic PHP...SDK的安装方法 使用php的包管理器composer安装Hyperledger Farbic PHP SDK: composer require americanexpress/hyperledger-fabric-sdk-php
我们重新设计Fabric的交易排序服务,仅使用交易ID,从而大大提高了吞吐量。 2)并行和缓存:交易验证的某些方面可以并行化,而其他方面可以从缓存数据中受益。...此外,每个块及其交易的索引都存储在LevelDB中以加速数据访问。 3. 设计 本节介绍我们对Fabric 1.2版的体系结构和实现的更改。...这使它们非常适合仅附加数据存储。...作为消息大小函数的订购方吞吐量 在这个实验中,我们设置了多个客户机来向订购者发送事务,并监视发送100000个事务所需的时间。...1)固定块大小的实验:图5和图6显示了一次运行100000个交易的验证和提交结果,重复1000次。
org.hyperledger.fabric.contract.ContractInterface;import org.hyperledger.fabric.contract.annotation.Contact...;import org.hyperledger.fabric.contract.annotation.Contract;import org.hyperledger.fabric.contract.annotation.Default...;import org.hyperledger.fabric.contract.annotation.Info;import org.hyperledger.fabric.contract.annotation.License...;import org.hyperledger.fabric.contract.annotation.Transaction;import org.hyperledger.fabric.shim.ChaincodeException...;import org.hyperledger.fabric.shim.ChaincodeStub;import org.hyperledger.fabric.shim.ledger.KeyValue;
链接:https://sdkjavadocs.github.io/ 2、Fabric-sdk-java链码访问快速上手教程 非常简洁的fabric java sdk中文起步教程,hello-world级别...java sdk访问链码 这篇文章的重点在于链码的调用,因此比较详细地步骤讲解了使用fabric java sdk查询链码状态 或提交链码交易的代码,使用的是官方的fabcar链码案例。...6、使用fabric java sdk进行TLS通信 这篇文章的重点是介绍如何使用fabric java sdk访问启用了tls通信的超级账本fabric区块链 网络。...链接:https://developer.ibm.com/tutorials/hyperledger-fabric-java-sdk-for-tls-enabled-fabric-network/ 7、...Hyperledger Fabric Java SDK 构建和部署区块链网络 这篇文章主要介绍如何使用Hyperledger Fabric SDK Java创建,部署和测试区块链网络,以及链码开发、部署与调用
在超级账本Fabric区块链中,应用通过节点的RPC协议接口访问链码。...Java应用可以使用官方提供的Fabric-sdk-java开发包来实现对链码的访问,java开发包封装了Fabric区块链的GRPC链码访问协议,有利于开发人员聚焦于业务逻辑。...本文将通过编写一个最简单的可以访问Fabric链码的Java应用,来帮助你快速上手Fabric区块链的Java应用开发。...基本原理 在Fabric区块链中,应用通过节点的RPC协议接口访问链码: ?...; import org.hyperledger.fabric.sdk.Channel; import org.hyperledger.fabric.sdk.Peer; import org.hyperledger.fabric.sdk.Orderer
/hyperledger/fabric/internal/peer/channel" "github.com/hyperledger/fabric/internal/peer/common..." "github.com/hyperledger/fabric/internal/peer/lifecycle" "github.com/hyperledger/fabric.../hyperledger/fabric/internal/peer/channel" "github.com/hyperledger/fabric/internal/peer/common..." "github.com/hyperledger/fabric/internal/peer/lifecycle" "github.com/hyperledger/fabric...在 Hyperledger Fabric 中,chaincode.Cmd 函数用于创建与链码相关的命令。它接受两个参数:chaincodeID 和 cryptoProvider。
Hyperledger Fabric是一个是开源的,企业级的,带权限的分布式账本解决方案的平台。Hyperledger Fabric由模块化架构支撑,并具备极佳的保密性、可伸缩性、灵活性和可扩展性。...修改安装脚本 如果本地网络访问github顺畅可以忽略该步骤 编辑 bootstrap.sh 文件 vim $GOPATH/src/github.com/hyperledger/fabric/scripts...https://github.com/hyperledger/fabric/releases/download/v2.4.1/hyperledger-fabric-linux-amd64-2.4.1.tar.gz...https://github.com/hyperledger/fabric-ca/releases/download/v1.5.2/hyperledger-fabric-ca-linux-amd64-...为指定链码语言 deployCC 子命令将在 peer0.org1.example.com 和 peer0.org2.example.com 上安装 asset-transfer-basic 链码,如果第一次部署链码
什么是Hyperledger Fabric 为了满足现代业务需求,IBM与其他公司合作,共同开发了一个开放源代码,可立即投入生产的业务区块链框架,称为Hyperledger Fabric™,这是由LinuxFoundation...Hyperledger Fabric是被广泛使用的,支持准入网络上的分布式账本解决方案。它的模块化架构最大程度地提高了区块链解决方案的机密性,弹性和灵活性。 1....许多用例(尤其是在金融部门和医疗保健行业)受数据保护法律的约束,这些法律要求了解网络的成员是谁以及谁在访问特定数据。 例如,考虑一家私募股权公司。...使用Hyperledger Fabric v1.X,他们可以以编程方式执行此操作。...Hyperledger Fabric支持的通道允许数据仅传递给需要了解的各方。 例如,许多金融实体对竞争对手甚至看到正在处理的交易数量表示担忧。一些金融机构认为加密“不足”来保护其数据。
一直使用的都是 Fabric v1.4.8,所以智能合约也一直使用的都是 github.com/hyperledger/fabric/core/chaincode/shim 包。...v2.2 的智能合约时, 使用 github.com/hyperledger/fabric-contract-api-go/contractapi 替换 github.com/hyperledger/...Return schema invalid. required items must be unique [recovered]翻阅 github.com/hyperledger/fabric-contract-api-go...float32float64time.Time任何允许类型的数组/切片结构体(其公共字段全部属于允许类型或另一个结构体)指向结构体的指针具有键类型为 string 和值为任何允许类型的映射interface{}(仅当直接传入时才允许...合同的函数只能返回零、一个或两个值:如果函数被定义为返回零值,那么对该合同函数的所有调用将返回成功响应如果函数被定义为返回一个值,那么该值可以是参数列表中列出的任何允许类型之一(除了 interface
; import org.hyperledger.fabric.contract.ContractInterface; import org.hyperledger.fabric.contract.annotation.Contact...; import org.hyperledger.fabric.contract.annotation.Contract; import org.hyperledger.fabric.contract.annotation.Default...; import org.hyperledger.fabric.contract.annotation.Info; import org.hyperledger.fabric.contract.annotation.License...; import org.hyperledger.fabric.contract.annotation.Transaction; import org.hyperledger.fabric.shim.ChaincodeException...; import org.hyperledger.fabric.shim.ChaincodeStub; import org.hyperledger.fabric.shim.ledger.KeyValue
Hyperledger Fabric 的分层架构设计如图下所示。 ?...Hyperledger Fabric 的分层架构设计 Hyperledger Fabric 可以分为7层,分别是存储层、数据层、通道层、网络层、共识层、合约层、应用层。...链码执行特定的函数,这个函数可能会修改状态数据,并返回结果。 状态对应了交易数据的变化。...在Hyperledger Fabric 中,只有被认可的交易才能被提交。而交易是对链码上的操作的调用,因此链码是核心内容。同时还有一类称之为系统链码的特殊链码,用于管理函数和参数。...应用层是 Hyperledger Fabric 的各个应用程序。
领取专属 10元无门槛券
手把手带您无忧上云