本文概述了资产交易过程中的事务机制。该场景包含客户A和B,在进行萝卜买卖。他们各自有一个网络节点,通过节点他们发送交易并和账本进行交互。

该流程假设通道已建立并正常运行。用户已注册并使用组织认证授权(CA)登记,同时获得必要的加密材料来进行网络验证。

链码(包含一组代表萝卜市场初始状态的键值对)被安装在节点上并在通道上进行实例化。链码包含定义交易指令集合的逻辑和达成一致的萝卜价格。设置一项针对链码的背书策略,表明节点A和B都必须对任何交易进行背书。

1. 客户A发起交易

发生了什么?- 客户A发出萝卜购买请求。请求目标节点A和B,分别代表客户A和B。背书策略表明两个节点必须为任何交易进行背书,因而请求被发送到节点A和B。

接下来构建交易提案。一个以可用SDK(node, java, python)为支撑的应用利用有效的API来生成交易提案。这项提案作为调用链码功能的请求来完成数据到账本的读取和/或写入(即为资产写入新的键值对)。SDK有两个作用:把交易提案包装成合适架构格式的库(基于gRPC的协议缓冲);使用用户的加密证书来创建交易提案的唯一签名。

2. 背书节点验证签名&执行交易

背书节点使用MSP验证签名并确定请求者是否被合理授权进行提案的操作(使用通道ACL)。背书节点以交易提案凭证为输入,基于当前状态的数据库执行来生成交易结果,输出包括反馈值、读取集合和写入集合。截止现在账本还未进行更新。这些值的集合,背书节点的签名以及是/否的背书声明一同作为“提案反馈”被传输回到SDK,SDK对应用消耗的载荷进行解析。

3. 审查提案反馈

应用对背书节点签名进行验证,比较提案反馈(链接到包含载荷代理的术语条款)来决定是否一致,指定的背书策略是否被执行(即节点A和B都进行了背书)。这种架构可以保证即使一个应用选择不进行反馈审查或者转发了没有背书的交易,背书策略依然会被节点执行并在验证提交阶段维持。

4. 客户组合交易背书

应用对交易提案进行广播,以“交易信息”对订购服务实现反馈。交易包含读/写集合,背书节点签名和通道ID。订购服务不读取交易细节,只是从网络中所有通道接收交易,根据每个通道按时间顺序调用,创建每个通道的交易区块。

5. 交易验证和提交

交易区块被发布到通道中的所有节点。区块中的交易被验证来确保背书策略被执行并且账本的读取集合变量没有发生变化,因为读取集合是执行交易生成的。区块中的交易被标记为有效或无效。

6. 账本更新

每个节点都把区块追加到通道的链中,对每项有效交易,写入集合被提交到当前状态的数据库。发出事务通知客户端应用,交易(调用)被永久追加到链中以及交易是有效或者无效的。

Fabric交易流程相关推荐

  1. HyperLedger Fabric 交易流程

    在生产环境中,一个最小的Fabric联盟链网络由4个结点组成,如下图: 为了避免单点故障,进行结构冗余,每个节点的角色安排如下: · 192.168.1.120 peer1, orderer1, zo ...

  2. hyperledger fabric交易流程

    首先,先简单看看上面这个交易流程图吧,下面就这个图详细的说明一下整个fabric整个交易流程: 1.区块链客户端把交易请求发给之前约定好的所有背书节点(endorsing peer).这里说明一下en ...

  3. Hyperledger Fabric 交易流程

    Transaction Flow 本文件概述了在标准资产交换期间发生的交易机制.该方案包括两个clientA和B,他们购买和销售萝卜.他们分别在网络上有一个peer,通过peer发送他们的交易并与账本 ...

  4. Fabric 节点类型&交易流程

    0x00 节点类型 在Fabric中,尽管所有对等节点都是相同的,但它们可以根据网络的配置方式承担多个角色:(①②是主要的节点类型) 1.提交节点: 通道中的每个对等节点都是一个提交节点.它们接收生成 ...

  5. 区块链Fabric 技术架构和交易流程

    Fabric 架构 总体架构核心部分由成员管理(Membership services).共识服务(Consensus services)和智能合约(Chain-code Services)三部分, ...

  6. Hyperledger Fabric的网络拓扑图与交易流程

    1. Fabric中的四种节点 客户端节点 介于应用程序与底层之间,是两者之间交互的媒介节点.它不能独立存在,必须与Orderer节点与Peer节点建立连接,才可以发挥作用,比如连接到Orderer节 ...

  7. 3.3 典型交易流程

    图3-4所示为Hyperledger Fabric 1.0典型的交易流程图. 图3-4 交易流程总图 从上一节的网络节点架构中,我们已经了解到基于Hyperledger Fabric 1.0的区块链应 ...

  8. 区块链架构与交易流程(fabric1.0)

    区块链架构与交易流程 区块链系统架构 节点 网络拓扑 交易流程 1. 提交交易提案 2. 模拟执行提案并签名 3. 返回模拟执行结果 4. 提交交易 5. 交易排序并结块 6. 广播区块 7. 保存区 ...

  9. 联盟链--3Fabric 1.0交易流程

    Fabric 1.0交易流程 fabric中的所有交易都是通过chaincode执行 1.应用程序客户端通过SDK调用证书服务(CA)服务,进行注册和登记,并获取身份证书. 2.应用程序客户端通过SD ...

最新文章

  1. P1020 导弹拦截(LIS)
  2. python中使用if __name__ == '__main__':
  3. linkhashmap原理_LinkedHashMap原理
  4. wordpress 调整段落空两,段落间的距离
  5. 树莓派安装Ubuntu MATE及ROS系统
  6. Linux 系统添加静态路由的方法
  7. SAP编程中最基本的概念
  8. android 设备注册,i2c_设备注册流程
  9. Android进阶: 10分钟实现NDK-JNI 开发教程
  10. 和秋叶一起学PPT之快速标准化长文档(课时三)
  11. A星算法优化(一)启发函数
  12. 将assets文件转为byte[]
  13. crt中 新建的连接存储在哪_SecureCRT永久保存配置的方法
  14. 如何预防电脑辐射(转自j2medev)
  15. Linux的strings命令_拔剑-浆糊的传说_新浪博客
  16. 对于流媒体的一些认识
  17. STC单片机不同数据类型串口打印输出示例程序
  18. c语言霍夫变换圆检测,Hough Transform(霍夫变换)检测Circle(圆)的几种方法
  19. [转] 整理一下SQLSERVER的排序规则
  20. 太阳能板最大面积js

热门文章

  1. Delphi导出word
  2. manjaro go的安装
  3. 雷达人体存在感应器成品,广泛应用于感应灯控制,实时精准感知方案
  4. fiddler https 抓包
  5. 关于编程的自我介绍和规划。
  6. librosa 安装
  7. SE,SA和RD都代表什么
  8. 区块链的未来发展和前景会如何呢?
  9. tomcat重启警告:Abandoned connection cleanup thread)
  10. 有意思的张飞日记-_-