6.3 Fabric交易流程

区块链最主要的特性之一是去中心化,没有了中心机构的集中处理,为了达成数据的一致性,就需要网络中全民参与管理,并以某种方法达成共识,所以区块链的交易流程也就是共识的过程。
       在Fabric中,本由一个节点处理的过程,在逻辑上被分解为不同的角色,每个角色承担不同的功能;节点(Peer)分解为背书节点(Endorser peer)和提交节点(Committer peer),为了达到处理的顺序性,提炼出排序(Orderer)角色。
       Fabric是应用于联盟链的场景,在处理每一笔交易时,每个环节上需要对交易信息进行权限校验。
       Fabric交易流程图如下所示:

图:Fabric交易流程

交易过程详细流程:
     1) 应用程序客户端通过SDK调用证书服务(CA)服务,进行注册和登记,并获取身份证书;
     2) 应用程序客户端通过SDK向区块链网络发起一个交易提案(Proposal),交易提案把带有本次交易要调用的合约标识、合约方法和参数信息以及客户端签名等信息发送给背书(Endorser)节点。

3) 背书(Endorser)节点收到交易提案(Proposal)后,验证签名并确定提交者是否有权执行操作,同时根据背书策略模拟执行智能合约,并将结果及其各自的CA证书签名发还给应用程序客户端。

4) 应用程序客户端收到背书(Endorser)节点返回的信息后,判断提案结果是否一致,以及是否参照指定的背书策略执行,如果没有足够的背书,则中止处理;否则,应用程序客户端把数据打包到一起组成一个交易并签名,发送给Orderers。
     5) Orderers对接收到的交易进行共识排序,然后按照区块生成策略,将一批交易打包到一起,生成新的区块,发送给提交(Committer)节点;
     6) 提交(Committer)节点收到区块后,会对区块中的每笔交易进行校验,检查交易依赖的输入输出是否符合当前区块链的状态,完成后将区块追加到本地的区块链,并修改世界状态。

原文地址:https://www.cnblogs.com/llongst/p/9439936.html

时间: 2024-10-12 17:21:54

6.3 Fabric交易流程的相关文章

Hyperledger交易流程

Hyperledger Fabric Network中的角色 在Hyperledger中,由三种类型的角色: Client:应用客户端,用于将终端用户的交易请求发送到区块链网络: Peers:负责维护区块链账本,分为endoring peers和committing peers,其中,endorser为交易做背书(验证交易并对交易签名),committer接收打包好的区块,然后写入区块链中.Peers节点是一个逻辑的概念,endorser和committer可以同时部署在一台物理机上. Orde

金融系列14《QPBOC交易流程》

中国银行金融IC卡qPBOC交易时间(不含终端处理时间)要求:IC卡私钥长度1024位,交易时间 <= 500ms, 1152 <=600 ATR=3B8D800100814D220886601222275000014A CARD=6231200100000000217F Send:00A404000E325041592E5359532E4444463031 --->:6F30840E325041592E5359532E4444463031A51EBF0C1B61194F08A00000

QPBOC扩展个人化及交易流程

1 Q扩展部分数据需写入3个DGI中,分别为:A001,8020,9020 1.1  A001扩展应用配置 DGI 长度 值(示例) A001 7*N 15 01 00 00 FF 00 00 数据按7个字节为一个单元进行组织,每个单元对应一个扩展应用文件的配置信息,解析如下: 1字节扩展应用文件SFI: 1字节文件类型:01表示变长记录文件, 02表示循环记录文件: 1字节读权限:00表示采用Read CAPP Cache指令读 1字节写权限:00表示采用Update CAPP Cache指令

POS终端交易流程

POS终端的操作流程,应符合以下基本要求: a)  提示交易功能选择:  功能键和数字键同时可用. b)  对于需验证操作员或管理员密码的交易,提示输入并进行验证. c)  按照交易要求,提示刷卡或手输卡号: 如不刷卡,可按指定功能键,进入手工输入卡号提示. d)  按照交易要求,选择提示输入有关数据: 包括:交易金额.预授权金额.退货金额.原授权码.原POS流水号.原检索参考号等. e)  按照交易要求,提示持卡人输入密码: 如直接按确认键,则视为无密码. f)  提示处理中 显示处理和通讯状

区块链数字货币虚拟币交易平台_法币交易流程机制

随着区块链技术应用的持续火热,国内各大互联网公司相继涉足区块链应用开发领域.区块链的火爆,也使人们加深了对数字货币的认识,本篇主要介绍常见的虚拟币交易平台中的法币交易流程.1.用户充币操作注册登录平台,进入充币操作界面,填写区块链交易ID并选择钱包,提交充币请求,系统请求区块链验证该笔交易.充币成功的话,系统会自动为充币用户加币:充币不成功则提示用户该笔交易无效.2.用户提币操作用户填写提币数量并选择到账的钱包地址,提交到后台,等待管理员审核,若无异常情况,管理员通过提币申请,为用户实现提币操作

区块链支付系统开发的交易流程

区块链支付系统作为区块链又一新领域的应用,解决了传统支付行业的不稳定性以及费用高的问题.目前支付系统能够应用的领域比较广泛,比如现有的金融行业,外贸以及电商游戏行业,都需要支付系统来解决资金流的问题,因此支付系统也就成为了很多行业必不可少的系统.区块链支付系统开发咨询13823115027Q:2731762679但目前传统的第三方第四方支付涉及到了很多问题,国家对这方面监管的相对比较严格,市面上的一些支付系统大多存在不稳定以及收费很高的问题,这些问题相对来说也是阻碍了相关行业的发展.也就在这样的

PBOC2.0协议中电子存折/电子钱包中圈存交易流程

通过圈存交易,持卡人可将其在银行相应账户上的资金划入电子存折或电子钱包中.这种交易必须在金融终端上联机进行并要求提交个人识别码(PIN)(无论电子存折还是电子钱包应用). 交易流程图如下: 1.1 发出初始化圈存交易 终端发出初始化圈存(INITIALIZE FOR LOAD)命令启动圈存交易. 初始化圈存(INITIALIZE FOR LOAD)命令报文如表1所示: 命令报文中的数据域为: 1.2 处理初始化圈存(INITIALIZE FOR LOAD)命令 收到初始化圈存(INITIALIZ

Hyperledger Fabric on SAP Cloud Platform

今天的文章来自Wen Aviva, 坐Jerry面对面的程序媛. Jerry在之前的公众号文章<在SAP UI中使用纯JavaScript显示产品主数据的3D模型视图>已经介绍过Aviva了,SAP成都C4C开发团队中其他同事评价她为:"美腻与智慧的化身","云时代女王","是大家前沿技术的引路人".因为Jerry和Aviva就在一个组,所以我的看法是,这些评价都实至名归. 比如Jerry了解到的Javascript 3D渲染,增强现

HyperLeger Fabric开发(三)——HyperLeger Fabric架构

HyperLeger Fabric开发(三)--HyperLeger Fabric架构 一.HyperLeger Fabric架构简介 1.通道简介 商业应用的一个重要的需求是私密×××易,为此Fabric设计了通道(Channel)来提供成员之间的隐私保护.通道是部分网络成员之间拥有独立的通信渠道,在通道中发送的交易只有属于通道的成员才可见,因此通道可以看作是Fabric的网络中部分成员的私有通信子网.通道由排序服务管理.在创建通道的时候,需要定义通道的成员和组织.锚节点(anchor pee