HyperledgerFabricv1架构简介

栏目: 后端 · 发布时间: 6年前

内容简介:Hyperledger是一个由Linux基金会托管的开源软件,Hyperledger Fabric是一个区块链框架实现,它是Hyperledger项目之一。Fabric的一些关键特性:这些是维护分类帐的网络服务,它接收有顺序的更新消息,这些消息是将新事务提交到分类帐,并返回智能合约。

Hyperledger是一个由 Linux 基金会托管的开源软件,Hyperledger Fabric是一个区块链框架实现,它是Hyperledger项目之一。

Fabric的一些关键特性:

  • 没有令牌 - 默认无安全机制的区块链
  • 基于共识算法实现分布式事务。
  • 基于交易事务批准的会签背书策略
  • 私人通道可共享机密信息

Hyperledger Fabric组件

参与端

这些是维护分类帐的网络服务,它接收有顺序的更新消息,这些消息是将新事务提交到分类帐,并返回智能合约。

提交端

它是进行提交交易事务的节点,维护分类账和状态。等于集中式数据库。

会签端

它接收交易事务以进行会签认可,并验证交易是否满足所有必要和充分条件,因此,会签端通过同意或拒绝会签来做出回应。

顺序服务或 排序

它批准某个块进入分类帐中,它与参与端和会签端同时通讯。它提供一个共享通信信道,这是在客户端和参与端之间的共享信道,事务在其中广播。

信道

参与端共享一个分类帐,这是一个子网,它用于限制与相关方的交易访问,这意味着客户只能看到他们所连接的信道的消息及其相关交易,并且不知道其他信道。

证书机构

它为网络上的参与者提供身份服务。它管理运行区块链所需的不同类型的证书。

聪明合约

它是每次调用时运行的事务逻辑,事务调用导致更新或查询分类帐状态。

共识

这是在对等网络上获得共识的流程,类似Paxos或Raft共识流程,它负责一致地复制分类帐,并同意加入新的块,是分布式事务状态同步部分,属于CAP的C。

共享分类帐

它是所有事务的不可变记录(类似一种修改状态的动作事件,可参考事件溯源架构),它是网络上所有参与者都可以访问的记录集合。

客户端

它是最终用户应用程序,必须参与端才能连接到区块链。

HyperledgerFabricv1架构简介

客户端APP/ SDK提交交易事务提议,见1.submit proposal,。所有会签端都将执行这个交易事务,见2.Execute CC。这些交易并不会导致分类账中状态的更新,因为只有参与端这一步骤,整个步骤还没有结束呢。

一旦参与端执行完成,它将由参与端进行会签并返回响应结果给客户端,见第3步;然后,客户端将事务提交给排序者,见第4a步,然后,这个排序服务以块的形式收集交易,并分发给提交的参与端,见第5步,;这些实现提交的端点使用gossip传递给其他参与端,见第6步。这里有不同的 排序算法 可用,例如SOLO(单节点,开发),Kafka,SBFT。

参与提交的端点会基于当时参与会签的背书策略校验这个交易,并检查交易事务是否对当前状态有效。在所有这些过程之后,事务会被写入分类帐。当事务成功或失败时,以及如果已将块添加到分类帐中(如果它们已注册通知),则会通知客户端应用程序;客户端应用程序也将被它们所连接的每个端通知。

这里由于去除了区块链中一个链一个的串行部分,这样排除了串行事务的弊端,提高了吞吐量,分布式一致性通过共识算法达成最终一致。这6步过程非常类似于两段事务提交的两个阶段,1-3步相当于预提交阶段,4到6步相当于确认提交阶段,因为没有区块链的工作证明,也就不需要哈希算力算新的块的哈希值,那么排序功能就会缺失,这是通过排序服务实现的。

分布式系统Paxos算法

分布式系统Raft算法

分布式事务 区块链 分布式系统


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

复盘+:把经验转化为能力(第2版)

复盘+:把经验转化为能力(第2版)

邱昭良 / 机械工业出版社 / 39.00

随着环境日趋多变、不确定、复杂、模糊,无论是个人还是组织,都需要更快更有效地进行创新应变、提升能力。复盘作为一种从经验中学习的结构化方法,满足了快速学习的需求,也是有效进行知识萃取与共享的机制。在第1版基础上,《复盘+:把经验转化为能力》(第2版)做了六方面修订: ·提炼复盘的关键词,让大家更精准地理解复盘的精髓; ·基于实际操作经验,梳理、明确了复盘的"底层逻辑"; ·明确了复......一起来看看 《复盘+:把经验转化为能力(第2版)》 这本书的介绍吧!

MD5 加密
MD5 加密

MD5 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换