hyperledger fabric

Hyperledger Fabric注册及CA证书颁发 加入Fabric联盟链的计算机结点和用户都必须要经过注册并获得CA颁发的证书,才能在联盟链中操作。证书颁发机构可以提供的功能如下: 身份的注册 或连接到LDAP(Lightweight Directory Access Protocol,轻量目录访问协议)作为用户注册表; 签发登记证书(ECerts)(Enrollment Certificates) 签发交易证书(TCerts)(Trans... 阅读详情
token:

token是一种身份验证方式。

传统身份验证:

传统方式是使用session,即在用户登录时记录用户信息并生成一个ID,客户端在下一次访问时会带着这个ID,因此直接验证ID即可。而这份记录就是session,存在服务端中,可能需要定期清理。

换成token:

实际上和传统的方式没有多大区别,只是把ID换成token的信息:head,payload,signature。只是token更安全。

fabric通道:

通道是指两个或多个特定网络成员之间的通信的私有“子网”,用于进行需要数据保密的交易。channel由成员(组织)、每个成员的锚点(peer)、共享账本,链码应用程序(chaincode)和order服务节点定义。网络上的每个transaction都在一个channel上执行,每个通信方必须经过身份验证并授权在该channel上进行交易。加入channel的每个peer都具有由成员服务提供商(MSP)给出的自己的身份。

channelEventHub:

由于fabric对于事件的处理是跨越了多个组件(应用,背书节点,排序服务以及提交节点),这会花费较长的时间,因此需要采取异步操作。在事件被背书后但是在事件被发布到排序节点之前。应用需要注册一个监听器,以便在事务达到最终时通知事件,即时间将要提交到区块链上时。

交易(transaction):

链码执行的操作,可以分为部署交易和调用交易。
部署交易:创建新的链码并设置一个程序作为参数。当一个部署交易执行成功,表明链码已被安装到区块链上。
调用交易:调用交易引用链码提供的一个函数。当成功时,链码执行特定的函数-它可能涉及修改相应的状态,并返回一个输出。

状态(state):

区块链的状态被建模为一个版本键/值存储(KVS key/value store),键的名称和值可以是任意的。整体上由运行在区块链上的链码进行操作,通过存和取KVS操作实现。这个KVS一般以JSON的形式存储在数据库中,fabric支持couchdb的数据库存储。

账本(Ledger):

账本提供了在系统运行过程中发生的可验证历史,它包含所有成功的状态更改(有效交易)和不成功的状态更改尝试(无效交易)。
账本是由排序服务(ordering service)构建的一个全部有序的交易哈希链块(有效的或无效的)。哈希链强制将全部排序块置入账本,每个块包含一批全部排序交易。这个强制全部排序覆盖所有交易。
每个peer节点都保存有账本,而orderer节点负责实现容错。

节点:
  • 客户端节点:客户端代表最终用户实体,必须连接到一个peer节点以便与区块链交互。客户端可以选择连接任何peer节点,并进行交易。
  • peer节点:可以提交交易、维持状态和账本的拷贝。此外,peer节点可以有一个特殊的背书角色。
  • orderer节点:实现共识广播,排序服务(ordering service)为客户端和peer节点提供共享的channel,为包含交易的消息提供广播服务。客户端连接到channel,可以在channel上广播消息,随后channel将消息传递给所有peer节点。
链代码(chaincode):

布置在节点上运行的程序。

背书策略:

对一份交易进行签名表示对该交易支持和信任,提高可信任度。通过制定背书策略使交易的可信任度达到某种程度才能运行该交易。

通道(channel):

用于保证节点间执行某种交易。由于fabric是联盟链,因此只有加入通道的成员才能执行交易并保证交易的公平性。

成员服务提供者(MSP):

作用是管理fabric中的众多成员,提供包括身份信息,身份认证在内的功能。MSP将颁发与校验证书,以及用户认证背后的所有密码学机制与协议都抽象了出来。一个MSP可以自己定义身份,以及身份的管理(身份验证)与认证(生成与验证签名)规则。

hyperledger fabric交易流程:
  • 首先客户端需要通过SDK进行注册和登录,获得身份的认证和证书(CA)。
  • 客户端可以发起一个交易提案(proposal),交易提案把带有本次交易要调用的合约标识、合约方法和参数信息以及客户端签名等信息发送给背书(Endorser)节点。
  • 背书(Endorser)节点收到交易提案(Proposal)后,验证签名并确定提交者是否有权执行操作,同时根据背书策略模拟执行智能合约,并将结果及其各自的CA证书签名发还给应用程序客户端。
  • 应用程序客户端收到背书(Endorser)节点返回的信息后,判断提案结果是否一致,以及是否参照指定的背书策略执行,如果没有足够的背书,则中止处理;否则,应用程序客户端把数据打包到一起组成一个交易并签名,发送给Orderers。
  • Orderers对接收到的交易进行共识排序(排序的原因是为了保证交易的执行顺序,因为可能同一时间有很多交易被接受,因此需要执行共识算法对交易排序),然后按照区块生成策略,将一批交易打包到一起,生成新的区块,发送给提交(Committer)节点;
  • 提交(Committer)节点收到区块后,会对区块中的每笔交易进行校验,检查交易依赖的输入输出是否符合当前区块链的状态,完成后将区块追加到本地的区块链,并修改世界状态。
couchdb嵌入:

使用couchdb作为状态数据库,当把资产建模为JSON并使用couchdb时,那么就可以使用chaincode中的CouchDB JSON查询语言对chaincode数据值执行复杂的富查询,这些类型的查询对于理解账本上的内容很有帮助。

例子:

官方marbles案例使用了fabric-SDK-node实现的交易。在fabric-sample中有balance-transfer。更有大神的解析

Hyperledger Fabric 入门必读书籍 下面整理一些 Hyperledger Fabric 一些比较好的区块链书籍,仅供学习参考。 1. 区块链原理、设计与应用 1.1 书籍封面 1.2 介绍 本书由超级账本核心设计和开发者撰写,是区块链开发落地专业指南。由浅入深,系统化介绍超级账本Fabric设计精华、应用开发等。全书分为理论篇和实践篇两大部分;第1-3章介绍区块链技术的由来、核心思想及典型的应用场景;第4-5章重点介绍区块链技术中... 阅读详情

相关推荐

Hyperledger Fabric 环境搭建及Fabric 测试网络使用(区块链、联盟链)

系统环境: [root@localhost ~]# cat /proc/version Linux version 3.10.0-1160.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Mon Oct 19 16:18:59 UTC 2020 官网手册: https://www.hyperledger.org/use/fabric 软

A&Long 1万+

Fabric系列 - 知识点整理

链码被编译成一个独立的应用程序,fabric用Docker容器来运行chaincode,里面的base镜像都是经过签名验证的安全镜像,包括OS层和开发chaincode的语言、runtime和SDK层。部署和调用链码之前需要先创建通道、加入通道、更新锚节点,然后才能进行有关链码的操作,比如安装链码、实例化链码、invoke和query等。和以太坊相比,Fabric链码和底层账本是分开的,升级链码时并不需要迁移账本数据到新链码当中,真正实现了逻辑与数据的分离。顾名思义,锚点交易指定了该通道上每个组织的。

搬砖魁首的博客 2411

超全总结Hyperledger Fabric架构原理

文章目录Hyperledger Fabric概述基本概念Fabric v0.6和v1.x架构差异这样设计的优势Hyperledger Fabric Network的共识算法各种节点客户端节点普通节点peer排序服务节点ordererCA节点交易流程1.发送交易提案2.模拟执行交易提案3.返回提案响应4.交易排序5.交易验证并提交6.通知交易结果给客户端交易有两种类型blockchain数据结构状态...

yhc166188的博客 5056

fabric架构

区块链开源实现hyperledger fabric架构详解1、区块链解决方案的特性1.1 分布式帐本1.2 智能合约smart contract1.3 数据一致性(共识算法)1.4 非对称加密1.4.1 数字证书 Digital Certificate1.4.2 公钥与私钥1.4.3 证书信任链1.5 小结2、fabric核心概念2.1 开发概念2.2 MSP3、fabric交易提交流程3.1 peer结点的部署3.2 交易的执行流程3.2.1 proposal提案阶段3.2.2 package打包阶段3.

qq_40713201的博客 2113

Hyperledger Fabric简介

fabric简介 Hyperledger Fabric是Hyperledger中的区块链项目之一。与其他区块链技术一样,使用账本,智能合约,参与者 可以管理交易。Hyperledger Fabric是私有和许可。网络的成员通过可信赖的会员服务提供商(MSP)注册,而不是开放式的无权限系统。Hyperledger Fabric支持隐私,提供了创建通道的功能,允许一组参与者创建单独的交易账本。 身份...

磨镜台的博客 4513

超级账本Hyperledger Fabric的使用

原文地址:超级账本Hyperledger Fabric的使用   说明 网易云课堂:HyperLedger Fabric手动部署教程的视频讲解 超级账本HyperLedger Fabric手动部署教程的文字实录(公开) Hyperledger是Linux基金会在2015年发起的项目,目的是推进区块链技术的开发应用。Hyperledger收录了多个区块链项目。 区块链技术平台: Sa...

IT技术快速入门学院的博客 9094

fabric概念

首先fabric是由IBM贡献的超级账本框架。它是一个利用现有成熟的技术来组合而成的一个区块链技术的实现。它是一种允许可插拔实现各种功能的的模块化架构。它具有强大的容器技术,来承载各种主流语言来编写的智能合约。 fabric大致分为底层的网络层、权限管理模块、区块链应用模块,通过SDK和CLI对应用开发者提供服务,如下面的图所示。 chaincode: 链码,Hyperledger Fabric智能合约写在链码里并在区块链外部应用程序要和账本发生交易的时候被外部应用程序调用。在大多数情况下,

leveretz的博客 3285

fabric全介绍

该资源包括:Chaincode实战,Hyperledger  Fabric架构解读 ,Hyperledger Fabric SDK解析, Hyperledger Fabric应⽤用案例例赏析,Hyperledger中的共识机制,Hyperledger中的共享账本等

Fabric搭建(简洁版)

(1)下载fabric-samples并切换到release2-2版本。(1)在主机上下载好压缩包后复制到虚拟机中。(4)查看golang是否安装成功。(1)下载fabric-ca码源。将文件中的内容删除改成以下内容。(2)编译fabric-ca。(2)查看安装是否成功。(3)检查是否编译成功。(2)下载二进制文件。(3)解压二进制文件。

X_Bubble的博客 1558

区块链 -fabric 开发入门

区块链 -fabric 开发入门

fabric安装

python编写fabric安装以及自动部署。

1、Hyperledger Fabric介绍

简介 Hyperledger介绍 超级账本(Hyperledger)项目是首个面向企业应用场景的开源分布式账本平台。由linux基金会牵头,包括 IBM 等 30家初始企业成员共同成立的。 Hyperledger Fabric是什么 该项目定位是面向企业的分布式账本平台,引入权限管理,设计上支持可插拔、可扩展,是首个面向联盟链场景的开源项目。 Fabric 基于 Go 语言实现,...

BlockChainBoy 1万+

【5G】5G 核心网(5GC)基本架构

本文旨在科普5G核心网相关知识...

Learning makes me happy (0^◇^0) 4万+

Hyperledger fabric与Hyperledger composer的联系

文章目录一、Fabric简介1.1 分布式账本(A Distributed Ledger)1.2 智能合约(Smart Contracts)1.3 共识(Consensus)1.4 什么是 Hyperledger Fabric?共享账本(Shared Ledger)智能合约(Smart Contracts)私密性(Privacy)共识(Consensus)二、Composer简介2.1 Compo...

s0ooy的博客 691

机场数据治理系列介绍(1):机场行业数据中台中的数据管理顶层设计方案

民航机场行业的数据中台中,有关数据管理顶层设计方案需要结合机场行业的业务特点和技术需求进行具体的设计,今日我们简要考量设计提供一个参考方案:

机场信息系统研究员的专栏 1604

F28335 DSP ePWM模块实战:从基础配置到电机控制

本文详细解析了TI TMS320F28335 DSP的ePWM模块,从基础概念、寄存器配置到实战应用。通过代码示例,手把手教你如何配置定时中断、生成PWM波形、实现死区保护与故障联防,并最终完成一个可调速、可换向的直流电机控制项目,是掌握F28335电机控制核心技术的实战指南。

g5h6i的博客 1128

HyperLedger Fabric中Fabric-CA的使用

一、简介 在e2e_cli的例子中,所有用到的证书和私钥都是由cryptogen这个工具根据crypto-config.yaml而生成的。但是在实际的生产环境中,我们需要给每个org都建立自己的CA,用来管理本org的用户。本次是以e2e_cli为例子,然后手动的生成所有的证书和私钥,并进行手动的执行例子进行验证。本次实验只部署了一个Fabric-CA作为rootCA。 二、环境准备 1.Linu...

yuandeng1024的博客 3540

HTML音乐爱心3D旋转相册完整源码

HTML音乐爱心3D旋转相册完整源码

LilyCoder的博客 1380

hyperLedger Fabric 系列一

1. 前言   当前在公司一直学习和研究区块链的相关知识,在大致了解了公链(bitcoin)之后,即将主要的精力投入到联盟链的学习和研究中。对于联盟链而言,我们是以hyperLedger作为主要的研究对象。本人作为一个区块链行业的小白级人物,将以此系列作为自己学习和调研经历的总结和整理,为后续区块链项目应用提供指导。   本文档作为整个系列的第一部分,介绍的内容大致包括: hyperLeder项...

wangyuezhilang的博客 7281

Android BSP 开发深度解析:驱动开发、系统定制与调试实战

本文系统介绍了Android BSP开发的核心技术要点,重点探讨了外设驱动开发与调试方法。文章首先解析了Android系统分层架构和BSP的关键作用,详细阐述了Linux内核驱动开发基础,包括字符设备、平台设备和输入子系统驱动的实现方法。随后针对触摸屏、WIFI、蓝牙、USB、摄像头和屏幕等常见外设,深入分析了驱动开发要点和调试技巧。此外,还梳理了Android系统启动流程,介绍了常用调试工具和方法论,并提供了面试常见问题及参考答案。全文内容全面实用,为Android底层开发人员提供了系统的技术指南。

郑伟强dev的专栏 290

智能办公助手——OpenClaw办公自动化集成(2026办公版)

OpenClaw智能办公助手是一款集成任务管理、文档处理等功能的办公自动化系统。该系统采用Python实现,核心功能包括:1)任务管理系统,支持任务增删改查、状态跟踪和统计报表生成;2)文档智能助手,提供文档处理能力。任务管理模块具备优先级设置、状态变更、时间记录等功能,并能生成包含完成率等指标的任务报告。该系统旨在通过自动化办公流程提升工作效率,减少重复性工作。开发者可利用这些模块构建完整的智能办公解决方案。

一键难忘的博客 349

Hyperledger Fabric 部署

Hyperledger Fabric 部署 Hyperledger Fabric需要使用Docker、Go环境。 Docker环境安装 Docker环境安装 直接查看这一篇,安装好之后将当前用户非root添加到Docker用户组中 #创建docker用户组 sudo groupadd docker #将当前用户添加到docker用户组 sudo usermod -aG docker...

段丛磊 1764

【社招算法经验贴】算法社招记录

总的来说,也是收获了七七八八的offer,给的涨幅40~100%,职级有的可以对标到 p7(但阿里p7是真难a,a不动)。面了一圈下来,感觉大模型也在收缩hc。尤其是多模态相关hc。凭着上学期间做过相关视觉的work和paper,社招虽然能进面试,但是hc少得可怜,多模态已死慎入。还有大模型应用算法给的涨幅,跟搜广推的涨幅差别不大。真正能几百万往上的是基座pretrain/后训练/infra,但是全靠social和conn,hc极少。

Danger的博客 977

Hyperledger Caliper测试Hyperledger Fabric1.4.1性能实战操作

此教程的前提是已经安装并配置了Hyperledger Fabric,如果没有安装的小伙伴可参考此文章。 下载并配置Node.js 下载Node.js sudo wget -P /usr/local https://npm.taobao.org/mirrors/node/v14.12.0/node-v14.12.0-linux-x64.tar.xz cd /usr/local sudo tar -xvf node-v14.12.0-linux-x64.tar.xz 配置环境变量 vim ~/.bashrc

GniLAY1022的博客 7297

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

搭建Hyperledger Fabric环境 的详细步骤,超级详细

本教程是跟着 某硅谷 三年前的视频一点点实现的。但是,跟着教程走,会出现很多视频里面没有出现过的问题,本文着重讲解搭建过程碰到的问题及解决方案!!1、 安装docker (见我之前的教程)2、安装docker-compose3、安装Golang 4. 安装node.js5、安装Git最好先更新apt-get,否则可能会下载版本很旧的git,这是个好习惯,在下载任何包的时候,最好都更新一下工具下面的截图是我学习的教程里面的截图, 但是在我操作的过程中会总有些镜像拉取不下来! 原因:因为官方的sh文件存在版

目前专注区块链相关技术的学习与分享 1万+

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

上一篇: 区块链基础知识学习记录
下一篇: 关于git常用命令
hellowangld
博客等级 码龄10年 15粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hellowangld

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值