Hyperledger Fabric

news2024/11/25 21:46:47

一.Hyperledger Fabric介绍

Hyperledger区块链全家桶

Hyperledger Fabric技术特性

  • 资产 — 资产定义使得几乎任何具有货币价值的东西都可以在网络上交 换,包括从食品到古董汽车再到货币期货。
  • 链码 — 链码执行与交易排序的分离,限制了跨节点类型所需的信任和 验证级别,优化了网络可扩展性和性能。
  • 账本特性 — 不可更改的共享账本编码记录了每个通道所有的交易历史, 并具有类似 SQL 的查询功能,以便进行高效的审计和解决争议。
  • 隐私 — 通道和私有数据集合使进行隐私且机密的多边交易成为可能, 这通常是竞争企业和受监管行业在共同网络上交换资产所需要的。
  • 安全和成员服务 — 许可成员资格提供了一个可信的区块链网络,参与 者知道所有交易都可以由授权的监管机构和审计员检测和跟踪。
  • 共识 — 独特的共识方法提供了企业所需的灵活性和可扩展性

Hyperledger Fabric区块链网络

  • 三个组织 R1、R2 和 R0,他们共同决定,从而建立一个网络。该网络有一个所有组织都同意 的配置CC1,并且列出了组织的定义,以及定义每个组织将在通道上扮演的角色的策略。
  • 在该通道上,R1和R2将节点P1和P2加入到通道C1,而R0拥有该通道的排序服务O。所有这 些节点都将包含通道账本(L1)的副本,记录交易。注意,排序服务保存的分类帐副本不包含状 态数据库。R1和R2也将通过它们拥有的应用程序A1和A2与通道进行交互。这三个组织都有一 个证书颁发机构,该机构为其组织的节点、管理员、组织定义和应用程序生成了必要的证书。

 Hyperledger Fabric架构

  • 账本:存储方式公有链数据层 账本技术相同,有多账本形式
  • 链码:联盟链中的智能合约, 拥有与公有链相同的执行逻辑
  • 交易:调用链码的操作
  • 事件:与公有链智能合约中的 事件功能类似

Hyperledger Fabric使用方式:

Hyperledger Fabric中的账本(Ledger)

Fabric中的节点(Peer)

区块链网络是由 Peer 节点组成的,每个节点都保存着账本和智能合约的副本

Hyperledger Fabric中的通道(Channel)

  • 通道允许区块链网络中特定的一些 Peer 节点以及应用程序来彼此交互
  • 由物理的 Peer 节点的组成的逻辑结构,通过通道配置进行管理
  • 是其中组件能够进行交流和私密交易的机制

Hyperledger Fabric中多账本与多链机制

Peer 节点在维护账本和链码的实例,其被创建时,它并没有账本也没有链码

Hyperledger Fabric中节点(Peer)的类型

Hyperledger Fabric中数据共识流程

Hyperledger Fabric中Orderer(排序机制)

Hyperledger Fabric中MSP(身份证)

  • • 通过将成员的公钥加入到组织的M S P中来实现成员身份
  • • M S P决定在组织、节点、通道级别,谁可以做什么

M S P域:MSP可以在两个地方进行配置:本地MSP和通道MSP

Hyperledger Fabric整体架构流程:

Fabric架构中的关键信息

二.环境配置

安装VSCode

安装VMWare Workstation

正常运行Fabric镜像(密码:123456)

打开“Terminal” -> 输入 “ip addr”------获取虚拟机IP

使用Mobaxterm连接,

检查运行工具,输入“cryptogen version”检查Fabric工具

输入“docker images”检查镜像

三.快速部署Hyperledger Fabric测 试区块链网络

1. 快速启动区块链测试网络 

启动Fabric虚拟机 

将fabric-samples.zip拷贝进虚拟机

解压并重命名为fabric-samples

unzip fabric-samples.zip

mv fabric-samples-main fabric-samples

拷贝bin和config目录

cd fabric-samples 
cp ~/fabric/bin bin -r
cp ~/fabric/config config -r

启动测试网络

./network.sh up

验证启动情况

docker ps

2. 使用测试区块链网络

安装jq

apt install -y jq

创建通道(Channel)(自动创建“mychannel”通道)

./network.sh createChannel

在通道启动一个链码

./network.sh deployCC -ccn basic -ccp ../asset-transfer- basic/chaincode-go -ccl go

与测试区块链网络交互

参考以下链接:

https://hyperledger-fabric.readthedocs.io/zh-cn/release-2.5/test_network.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1600276.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HDLbits 刷题 --Mux2to1v

Create a 100-bit wide, 2-to-1 multiplexer. When sel0, choose a. When sel1, choose b. 译: 创建一个100位宽的2对1多路复用器。当sel0时,选择a。当sel1时,选择b。 module top_module( input [99:0] a, b,input sel,output [99:0] out …

DataGrip2024安装包(亲测可用)

目录 一、软件简介 二、软件下载 一、软件简介 DataGrip是由JetBrains公司开发的一款强大的关系数据库集成开发环境(IDE),专为数据库开发人员和数据库管理员设计。它提供了一个统一的界面,用于管理和开发各种关系型数据库&#x…

个人微信API开发,API接口核心

API接口的核心 对于小白而言,初看API文档可能是一头雾水的——从哪里看,怎么看,看什么是摆在面前的问题。 其实对于产品经理而言,我们应该更关注这个公司可以提供什么样的API接口服务,比如我知道高德可以提供地图API&…

数据结构OJ:设计循环队列

题目介绍 本题为LeetCode上的经典题目,题目要求我们设计一种循环队列,满足FIFO原则且队尾被连接在队首之后。 思路讲解 题目中介绍循环队列的好处是可以重复利用空间,所以我们很容易想到在初始化时即开辟指定大小的空间,之后便不…

家居网购项目(手写分页)

文章目录 1.后台管理—分页显示1.程序框架图2.编写数据模型Page.java 3.编写dao层1.修改FurnDao增加方法 2.修改FurnDaoImpl增加方法 3.单元测试FurnDaoTest 4.编写service层1.修改FurnService增加方法 2.修改FurnServiceImpl增加方法3.单元测试FurnServiceTest 5.编写DataUtil…

【高录用-快速见刊】2024年数字化经济与金融创新国际学术会议(ICDEFI 2024)

会议简介 2024年数字经济与金融创新国际学术会议即将召开。此次会议旨在汇集全球数字经济与金融创新领域的专家学者,共同探讨数字经济的发展趋势以及金融创新的路径。与会者将分享前沿研究成果,讨论数字技术在金融领域的应用与创新,并推动数…

HDLbits 刷题 --Mux2to1

Create a one-bit wide, 2-to-1 multiplexer. When sel0, choose a. When sel1, choose b. 译: 创建一个1位宽的2对1多路复用器。当sel0时,选择a。当sel1时,选择b。 个人解法: module top_module( input a, b, sel,output out …

尚鼎环境科技诚邀您参观2024第13届生物发酵展

参展企业介绍 尚鼎环境科技(江苏)有限公司设立于2010年,公司坐落于江南平原南端素有『苏北门户』之称的古城扬州,办公室位在江苏省扬州市邗江区高新技术创业服务中心。 尚鼎环境科技长年致力于食品精炼/环境工程领域全程技术服务,工程实绩遍…

车载摄像头畸变校正解决方案,打造无畸变高清视界

在车载摄像头日益普及的今天,摄像头图像的畸变问题成为了制约图像质量提升的一大瓶颈。畸变不仅影响画面的美观度,更关键的是它可能导致智能驾驶系统对环境的误判,进而威胁到行车安全。美摄科技凭借其在图像处理领域的深厚实力,推…

imgcat 工具

如果经常在远程服务器或嵌入式设备中操作图片,要查看图片效果,就要先把图片dump到本地,比较麻烦。可以使用这个工具,直接在终端上显示。类似于这种效果。 imgcat 是一个终端工具,使用 iTerm2 内置的特性,允…

vivado 在硬件管理器中调试 AXI 接口

在硬件管理器中调试 AXI 接口 IP integrator 中的 System ILA IP 支持您在 FPGA 上对设计执行系统内调试。在 Versal 器件上 , System ILA 核已被废 弃。现在 , 在含 AXIS 接口的标准 ILA 中支持接口调试。如需监控 IP integrator 块设计中的…

sqlilabs靶场1—20题学习笔记(思路+解析+方法)

前几个题目较为简单,均尝试使用各种方法进行SQL注入 第一题 联合查询 1)思路: 有回显值 1.判断有无注入点 2.猜解列名数量 3.判断回显点 4.利用注入点进行信息收集 爆用户权限,爆库,爆版本号 爆表,爆列&…

Day42:动态规划 LeedCode 01背包 416. 分割等和子集

01背包 1.确定dp数组以及下标的含义 dp[i][j]的含义:从下标为[0-i]的物品里任意取,放进容量为j的背包,价值总和最大是多少。 那么可以有两个方向推出来dp[i][j] 2.确定递推公式 不放物品i:由dp[i - 1][j]推出,即背…

案例研究|众乐邦将MeterSphere持续测试平台融入DevOps流水线

众乐邦网络科技有限公司(以下简称为“众乐邦”)是一家企业服务公司。其旗下的众乐邦灵活用工数字化薪税管理平台(以下简称为灵活用工管理平台),以财税服务视角切入灵活用工场景,连接企业、灵活就业者和监管…

Windows下使用PanguVip实现浮动IP

在某些高可用场景下,我们往往需要使用浮动IP来进行实际访问的切换,比如为了保证Web应用的高可用,当主节点宕机后,我们将浮动IP切换到备节点,那么备节点就继续可以提供服务,在linux下我们可以使用keepalived…

4.15号驱动

设备树 1. 设备树介绍 1.1 引入 在linux内核3.10版本之前,arm公司将驱动相关的硬件信息(地址、中断号、i2c从机地址)都存放在arch/arm目录 由于每一个设备都会对应一个文件,进行描述硬件的信息,这个目录下会存放大量的垃圾代码&#xff0…

aosp13/14命令行进入分屏相关实战

背景: 分屏一般在手机上都是都是从桌面的最近任务卡片进入的,一般来说手机用户都是这样操作的,但是有一些场景或者情况就不一定可以顺利用上这个桌面的多任务卡片进入。 比如以下场景: 1、可能不是桌面的多任务的场景&#xff0c…

c++入门 命名空间

文章目录 C入门命名空间域作用限定符域作用限定符操作C的域编译器的搜索原则命名空间域的展开命名空间的嵌套 C入门 命名空间 命名空间的存在:为了解决同域中起名字冲突的问题 在C/C中,变量、函数和后面要学到的类都是大量存在的,这些变量、…

使用Python实现文字识别,教你如何从图片中识别提取文字

今天分享的是如何使用Python从图片中提取文字。虽然从我的实际操作结果来看第三方库的图片文字识别效果并不是十分理想,但也能满足我的需求了。 首先,我们需要知道Python中两个非常重要的库:Pillow和Tesseract-OCR。Pillow是一个免费开源的图…

类与对象(中

✨✨✨学习的道路很枯燥,希望我们能并肩走下来! 目录 前言 一、类的6个默认成员函数 二、构造函数 2.1 概念 2.2 特性 2.3 总结 三、析构函数 3.1 概念 3.2 特性 3.3 总结 四. 拷贝构造函数 4.1 概念 4.2 特征 4.3 总结 五.赋值运算符重载 5.1 运算符重载 5.2 赋…