自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 Fabric 2.x 外部链码部署(External Chaincode Service)实战攻略

本文介绍了Fabric 2.0+中引入的外部链码服务(External Chaincode Service)部署方法。相比传统模式,该方案只需首次安装、批准和提交链码,后续更新可直接热重载,大幅简化了开发测试流程。主要内容包括:Docker Compose和core.yaml的配置调整、链码打包文件结构、外部构建器脚本(detect/build/release)的实现、链码安装与批准流程,以及外部链码进程运行时的环境变量设置。该方法通过将链码作为独立服务运行,实现了代码修改后的即时生效,特别适合开发和测试环

2025-09-29 13:29:56 804

原创 fabric启动节点var/hyperledger/production: permission denied

但是运行是依然报错为var/hyperledger/production的权限问题,并且我也已经对../../data/bank1/peer1目录设置了操作权限。

2025-09-15 19:48:05 254

原创 在 Docker Compose 中解决文件权限不足的问题

本文探讨了Docker容器访问宿主机文件时的权限问题。当容器内服务需要读写宿主机文件时,常因权限不匹配导致失败。解决方案是在docker-compose.yml中使用user字段,指定容器以与宿主机文件相同的用户/组ID运行(如1000:1000)。可通过环境变量LOCAL_UID/LOCAL_GID动态设置,默认值1000适配多数Linux系统。执行前用export设置变量即可实现权限同步,该方法既解决了访问问题,又提升了容器安全性。全文150字。

2025-09-10 14:32:56 577

原创 sh文件相互调用时的相对路径问题

文章摘要:在Fabric项目开发中,当从主脚本network-procurement.sh调用子脚本orderer1-org0-setEnv.sh时,会出现相对路径解析错误的问题,因为脚本执行时的工作目录是主脚本所在目录。解决方案是使用pushd和popd命令临时切换工作目录到子脚本所在目录,确保环境变量FABRIC_CFG_PATH能正确指向目标文件。这种方法有效解决了跨目录调用时的路径问题,提高了脚本的可移植性和灵活性。

2025-09-10 11:10:57 322

原创 Hyperledger Fabric官方中文教程-改进笔记(十七)-编写第一个链码

本文介绍了Hyperledger Fabric中链码(Chaincode)的基本概念和使用方法。链码是运行在独立进程中的智能合约程序,支持Go、Node.js和Java语言开发,通过事务处理来管理账本状态。文章重点讲解了Fabric Contract API作为高级开发接口的作用,并提供了一个资产转移链码的Go语言实现示例,包括初始化账本、创建资产等核心功能。文中还区分了底层shim接口和上层contractapi封装的关系,帮助开发者理解Fabric链码的开发架构和最佳实践。

2025-08-26 10:23:50 1445

原创 Hyperledger Fabric官方中文教程-改进笔记(十六)-策略(policy)

本文介绍了Hyperledger Fabric中的策略机制。策略是Fabric网络治理的核心,定义了成员如何就网络变更达成共识。文章首先阐述了策略的基本概念,指出其与以太坊等公链的不同之处在于Fabric作为许可链支持动态治理。随后详细讲解了策略的实现方式,包括访问控制列表(ACLs)、智能合约背书政策和修改策略等关键类型。在语法层面,文章对比了Signature策略(显式指定签名要求)和ImplicitMeta策略(基于组织层级的隐式规则)两种编写方式

2025-08-24 19:17:53 1319

原创 Hyperledger Fabric官方中文教程-改进笔记(十五)-从通道中删除组织

本教程演示了如何从Hyperledger Fabric测试网络中移除Org2组织。前提是已创建包含Org1、Org2和Org3的区块链网络。主要步骤包括:1) 停止Org2的peer节点;2) 获取当前通道配置并转换为可编辑的JSON格式;3) 删除Org2相关配置生成修改版;4) 计算配置差异并重新编码为protobuf格式;5) 获取Org1管理员签名后提交配置更新。整个过程使用configtxlator和jq工具进行配置转换与处理,最终完成组织移除操作。该流程适用于需要对Fabric网络组织结构进行调

2025-08-24 19:15:34 521

原创 Hyperledger Fabric官方中文教程-改进笔记(十四)-向通道中添加组织

摘要: 本文详细介绍了如何向Hyperledger Fabric测试网络中的通道添加新组织Org3。首先通过脚本自动完成添加过程,然后逐步讲解手动配置方法。主要内容包括生成Org3加密材料、创建组织定义文件、启动Org3节点组件,以及如何获取最新通道配置区块。文章强调通道配置更新的版本管理重要性,并提供了详细的环境变量设置和命令说明。该教程适用于组织管理员进行通道配置更新操作,可作为Fabric网络扩展的实用指南。

2025-08-24 19:14:31 553

原创 Hyperledger Fabric官方中文教程-改进笔记(十四)-向通道中添加组织

本文介绍了如何将新组织Org3添加到Fabric测试网络的应用通道中。首先通过自动脚本快速验证流程可行性,随后详细讲解手动操作步骤:生成Org3加密材料、创建组织定义文件、启动Org3节点组件,最后以Org1管理员身份获取最新通道配置区块。整个过程展示了Fabric通道配置更新的关键操作,包括版本管理、权限控制等核心机制,为后续真正的通道配置更新奠定了基础。文档强调这类操作通常由组织管理员而非开发者执行,并提供了完整的命令行操作指南。

2025-08-22 17:34:13 1187

原创 configtx通道配置文件

本文介绍了Fabric网络配置中的关键部分:组织权限配置和Capabilities能力集设置。组织权限部分定义了MSP目录结构和读写管理等策略规则,通过数字签名验证身份权限。Capabilities部分则规定了通道、Orderer和Peer节点所需支持的功能版本,确保网络兼容性。应用通道设置部分详述了默认策略配置,包括基于ImplicitMeta类型的读写和管理权限控制机制,以及背书策略的多数表决规则。这些配置共同构成了Fabric网络的权限体系和功能标准。

2025-08-20 18:05:40 1006

原创 Hyperledger Fabric官方中文教程-改进笔记(十三)-使用测试网络创建通道

本文介绍了如何在Hyperledger Fabric测试网络中手动创建新通道的完整流程。主要内容包括: 准备工作:启动测试网络,配置环境变量,确保configtxgen工具可用。 通道创建步骤: 使用configtxgen工具生成通道创世区块 通过osnadmin命令创建应用通道 关键概念说明:通道配置、排序服务、组织成员关系等。 注意事项:系统通道在2.3版本后已被废弃,本文基于更新后的英文文档翻译。 该教程详细演示了手动创建通道的完整过程,包括配置文件解析、命令执行等操作细节,适合开发者学习Fabric

2025-08-20 18:02:35 1347

原创 Hyperledger Fabric官方中文教程-改进笔记(十二)-使用CouchDB

本教程介绍如何在Hyperledger Fabric中使用CouchDB作为状态数据库。CouchDB支持JSON格式数据的富查询功能,相比默认的LevelDB提供了更强大的查询能力。文档详细说明了配置CouchDB的步骤,包括修改core.yaml文件、设置CouchDB容器等。重点讲解了如何为链码数据创建索引,通过示例展示了索引定义格式,并强调索引对查询性能的重要性。教程建议将数据以JSON格式存储,并提供了资产转移账本查询的代码示例,说明如何定义多个字段的索引。

2025-08-18 15:47:08 545

原创 Hyperledger Fabric官方中文教程-改进笔记(十一)-在Fabric中使用私有数据

本文介绍了Hyperledger Fabric中私有数据集合(PDC)的使用方法。主要内容包括:1) 通过资产转移示例说明PDC的应用场景,演示了如何在组织间安全共享和转移敏感数据;2) 详细解析集合定义文件的配置参数,如访问策略、数据保留期限等;3) 展示如何在链码中使用API读写私有数据,并区分不同组织的访问权限。文章还比较了显式集合与隐式集合的区别,为开发者在Fabric网络中实现数据隐私保护提供了实用指导。

2025-08-12 18:06:56 1168

原创 Hyperledger Fabric官方中文教程-改进笔记(十)-运行Fabric应用程序

本文介绍了如何使用Fabric Gateway客户端API与部署的区块链网络交互。主要内容包括: 准备工作 需要安装Fabric Samples及相关依赖环境 支持Node.js、Go和Java三种语言版本 搭建区块链网络 启动包含2个peer节点、1个排序服务和3个CA的测试网络 部署Asset Transfer智能合约(支持Go/TypeScript/Java语言) 运行示例应用 应用使用Fabric Gateway API与智能合约交互 实现资产创建、查询、更新等功能 详细说明各语言版本应用的运行方式

2025-08-11 18:23:44 1138

原创 Hyperledger Fabric官方中文教程-改进笔记(九)-Fabric Gateway

本文介绍了Hyperledger Fabric v2.4中引入的Fabric Gateway服务及其核心功能。Fabric Gateway作为Peer节点中的一项服务,通过简化的API简化了客户端应用程序与区块链网络的交互流程,将交易背书、提交等复杂操作委托给Gateway处理。文章重点阐述了Fabric Gateway的三大核心功能:交易处理:包括评估、背书、提交交易以及获取提交状态背书管理:自动选择背书节点并处理背书策略组合错误处理:提供重试机制和错误信息反馈

2025-08-08 17:37:48 1140

原创 Hyperledger Fabric官方中文教程-改进笔记(八)-启动,部署与交互

本文介绍了Hyperledger Fabric测试网络的启动与基本操作。首先通过./network.sh up命令启动包含两个对等节点和一个排序节点的Fabric网络。随后使用createChannel命令创建专用通信通道,实现组织间的安全交易。文档重点说明了智能合约的使用流程:需要多组织背书签名才能生效,链码需安装在对等节点上并通过组织审核后才能提交到通道使用。测试网络提供了完整的Fabric开发环境,支持证书生成、节点管理、通道创建和链码部署等核心功能。

2025-08-06 17:00:42 1458

原创 Hyperledger Fabric官方中文教程-改进笔记(七)-私有数据集合

Hyperledger Fabric私有数据机制允许通道中的部分组织共享敏感数据而不泄露给所有成员。私有数据集合包含两部分:实际数据通过Gossip协议在授权节点间点对点传输,而数据的哈希值被写入公共账本用于验证和审计。该功能适用于需要数据分级保密、避免创建过多通道的场景。交易流程中,私有数据通过瞬态字段传递,仅在授权节点本地存储,排序节点无法获取。文档还介绍了多种数据共享模式,包括公共账本+私人备忘录、链码访问控制、线下验证等,特别是在交易前需多方私下确认的场景(如资产交易需监管方预先批准)提供了解决方案

2025-08-02 16:51:25 1018

原创 Hyperledger Fabric官方中文教程-改进笔记(六)-智能合约,链码与账本

本文介绍了Hyperledger Fabric的核心概念,包括账本结构、背书机制和链码管理。关键要点包括:1)账本由不可篡改的区块链和可更新的世界状态组成;2)背书策略指定哪些组织必须签署交易,确保其有效性;3)所有交易都记录在区块链上,但只有有效交易会更新世界状态;4)链码在通道层面部署,其背书策略由成员组织共同批准。文章还对比了链码生命周期操作和普通交易的不同背书策略,并通过类比解释了链码、通道和组织之间的关系。

2025-08-02 16:50:04 1151

原创 Hyperledger Fabric官方中文教程-改进笔记(五)-Peer节点

本文介绍了Hyperledger Fabric中Peer节点的核心概念及其在网络中的关键作用。Peer节点是区块链网络的基本元素,负责存储账本和智能合约(链码),支持多账本和多链码的复杂配置。文章详细阐述了应用程序与Peer节点的交互流程,包括查询和更新交易的区别,强调更新交易需要经过复杂的共识过程。此外,还讲解了通道机制如何实现网络组件间的私密交流,以及Peer节点如何通过数字证书和MSP识别组织身份。最后,文章说明了排序节点在交易三阶段流程(提案、排序、验证)中的核心作用,确保全网账本的一致性。

2025-08-02 16:47:08 747

原创 Hyperledger Fabric官方中文教程-改进笔记(四)-MSP

以运用区块链网络的银行联盟为例。各个银行操作peer节点和排序节点,并且这些peer节点对提交到网络的交易进行背书。然而,每个银行也会有部门和账户持有人。帐户持有人将属于各个组织,但不会运行网络上的节点。他们只会通过移动电话或web应用程序与系统交互。那么网络如何识别和区分这些身份呢?于是一个CA用于创建身份,但就跟信用卡的例子一样,这些身份不能就这样被颁发,它们需要被网络识别。

2025-07-30 18:38:18 753

原创 Hyperledger Fabric官方中文教程-改进笔记(三)-身份

区块链网络中的不同参与者包括 Peer 节点、排序节点、客户端应用程序、管理员等。每一个参与者(网络内部或外部能够使用服务的活动元素)都具有封装在 X.509 数字证书中的数字身份。这些身份确实很重要,因为它们确定了对资源的确切权限以及对参与者在区块链网络中拥有的信息的访问权限。此外,数字身份还具有 Fabric 用于确定权限的一些其他属性,并且它为身份和关联属性的并集提供了特殊名称——主体。

2025-07-30 18:00:48 1076

原创 Hyperledger Fabric官方中文教程-改进笔记(二)-区块链网络

区块链网络概述 区块链网络是为应用程序提供账本和智能合约服务的技术基础设施。多个组织通过通道协作,共享交易数据,这些交易由智能合约生成并记录在各节点的账本副本中。网络核心组件包括: 证书颁发机构(CA):负责分发X.509证书,标识组织成员并用于交易签名验证 节点:包含peer节点(存储账本和执行智能合约)和排序节点(管理交易顺序) 通道:逻辑隔离的通信路径,各通道拥有独立账本和访问控制 网络创建流程包括:定义通道配置、部署CA服务、组织节点加入通道、安装和提交智能合约。

2025-07-30 16:32:59 1037

原创 Hyperledger Fabric官方中文教程-改进笔记(一)-基本概念

本文介绍了企业级区块链平台Fabric的核心特性。平台采用可插拔共识机制,支持适应不同信任场景的BFT(拜占庭容错)和CFT(崩溃容错)协议,分别适用于不可信和可信环境。Fabric独创"执行-排序-验证"架构,通过并行执行提高性能,并利用背书策略确保交易正确性。作为许可链,Fabric通过通道和私有数据集合实现了交易数据的隐私保护,通道确保子网络交易私密性,私有数据集合则保护组织子集间的敏感数据。平台平衡了性能与安全性,满足企业对高吞吐、低延迟和数据隐私的需求。

2025-07-30 12:31:15 786

原创 Hyperledger Fabric 基于官方中文教程的改进前言

本文基于Hyperledger Fabric官方文档进行翻译修订和内容扩展(新增约30%个人总结),旨在优化原中文文档存在的机翻错误、术语混淆和图文不符等问题。文章遵循CC-BY-4.0协议,包含对关键概念的通俗化解释和结构优化,可作为官方文档的补充学习材料。作者建议读者对照官方中文文档参考阅读,着重修正了"区块链网络"等章节的图文对应问题。修改版本由HAOR于2025年7月30日完成,保留了原文档的知识共享署名要求。

2025-07-30 12:21:17 287

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除