首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

区块链超级记帐本架构概览

通用的链体系结构(包括Hyperledger Fabric v0.6及更早版本),这些角色是统一的(参见Hyperledger Fabric v0.6的验证对等)。...与对等/统计者/签名者统一的设计(例如,HL Fabric v0.6)相比,该架构具有以下优点。 链码信任的灵活性。该架构将链码(链应用)的信任假设与信任假设进行排序。...即使Hyperledger Fabric v1包含的一些订购服务实现将支持多个通道,为了简单的呈现,本文的其余部分,我们假设订购服务由单个通道/主题组成。...如果客户端指定,那么只有在其本地KVS的相应密钥的读取版本号(即,如下所定义的读取集合)匹配由指定的版本号时,才支持对等模拟事务。...如果客户端PROPOSE消息中指定了,则客户端指定的必须等于模拟事务时由支持对等方产生的读取集。

1.3K40

FastFabric:提升Hyperledger Fabric性能到20000TPS

由于其许可性质,所有节点必须已知并向成员服务提供商(MSP)注册,否则其他节点将忽略它们。 C. 实现细节 为了讨论第III的改进,我们现在仔细研究一下orderer和peer架构。...排序者将相应的有效负载分别存储本地数据结构,并在从Kafka收回ID时重新组装交易。随后,与Fabric一样,orderer将交易集分段为并将它们传递给Peer。...Peer任务 回忆一下第II-C2,在从排序者接收时,Fabric Peer按顺序执行以下任务: •验证收到消息的合法性•验证每个交易的块头和每个认可签名•验证交易的读写集•更新LevelDB或...我们使用Fabric1.2作为基本情况,并逐步添加我们的改进以进行比较。默认情况下,fabric配置为使用leveldb作为对等状态数据库,排序服务将已完成的存储在内存,而不是磁盘上。...来自此Peer的被发送到单个数据存储服务器,该服务器将世界状态存储leveldb并将存储文件系统。对于扩展,五个背书者复制对等状态并提供足够的吞吐量来处理客户端背书负载。

1.5K10
您找到你想要的搜索结果了吗?
是的
没有找到

Hyperledger Fabric:一种分布式操作系统-基于准入控制的区块链

排序服务节点 简单讲叫做Orderer,是公共的排序服务组件。简短地来说,排序服务Fabric建立了所有交易的顺序,执行阶段每个交易包含了状态更新和计算的依赖,并带有背书节点的签名。...排序阶段前执行交易是容忍不确定性链码非常重要的一第二。...由于区块链网络可能存在大量节点,但预计只有相对较少的节点实现排序服务节点,因此可以将Fabric配置为使用内置Gossip服务将所交付的排序服务播到所有Peer节点(第4.3)。...分类帐组件分类帐更新期间容忍Peer崩溃,如下所示。接收到新之后,PTM已使用第3.4中提到的位掩码执行验证并将交易标记为有效或无效。...我们的实验侧重于验证阶段,因为Kafka订购服务的订购从未成为我们实验的瓶颈。验证最后,本实验,我们测量了32-vCPU对等上每秒3560个事务处理(tps)的平均SPEND吞吐量。

1K30

Fabric区块链kafka共识入门 原

Hyperledger Fabric区块链可以有多个Kafka节点,使用zookeeper进行同步管理。...只有通道的成员可以通道上交易,一个通道的交易在其他通道中看不到 OSN - 即排序服务节点(Ordering Service Node),Fabric中被称为排序节点。...kafka代理处理后,分发给请求节点 注意,虽然Hyperledger FabricKafka被称为共识(Consensus),但是其核心是交易排序服务以及额外的崩溃容错能力。...Hyperledger FabricKafka实际运行逻辑如下: 对于每一条链,都有一个对应的分区 每个链对应一个单一的分区主题 排序节点负责将来自特定链的交易(通过广播RPC接收)中继到对应的分区...OSN0已经有了交易foo,中继到kafka集群 此时OSN2将交易baz广播到集群 最后,交易bar由OSN0发送到集群 集群现在有三个交易,可以图中看到三个交易的日志的位置偏移量 客户端发送分发请求

2.1K20

fabric进阶—Fabric新特性

Hyperledger Fabric 2.5和2.4新特性 一,2.5新特性: Hyperledger Fabric v2.5的新增功能 1.清除私有数据的历史记录 虽然一直以来都可以从当前状态删除私人数据...从状态和对等的私有数据历史记录删除私有数据,这样就不能再从事件或其他对等查询这些数据。 作为新的链码API PurgePrivateData()提供。...二,2.4新特性: Hyperledger Fabric v2.4 的新增功能 1.结构网关 结构网关是在对等节点上运行的一项新服务,用于管理客户端应用程序的事务提交和处理,具有以下优点: 简化客户端应用程序和...2.对等节点取消加入 现在,当不再需要通道时,您可以从通道取消加入对等方。所有通道资源都将从对等方中删除,并且对等方将不再处理来自通道的。 有关更多详细信息,请参阅对等节点取消加入命令参考主题。...例如,以下情况下,此命令将很有用: 当安装了多个具有相同标签名称的链码包时,可以以后识别哪个 ID 对应于哪个包。 不安装特定链码包的情况下检查是否安装了该包。

26420

Hyperledger Fabric 系统架构详解

(只限于开发) Kafka(一种消息平台) Raft(相比 Kafka 更中心化) 网络协议 那Fabric网络各个节点的状态分发又是怎么进行的呢?...Fabric 区块链核心角色 首先要提的是Fabric网络的角色都是逻辑角色,比如 Peer 节点 A 可能既是排序节点,也可能在某些业务是背书节点,而一个角色也不仅仅由单一担任。...优势总结 Fabric通过将企业应用的各个复杂环节分配到各个逻辑角色节点(背书、排序等),不需要所有节点都承担如排序这样资源消耗较大的操作,消除了网络瓶颈;分配了角色后某些交易只特定的节点部署和执行,...制定,如图中示例为得到 2 个背书)提交已背书交易至排序节点(OSN) 排序点将交易打包成 blocks,排序(不执行或验证交易正确性)并广播至所有节点 所有节点对新 blocks 进行验证并提交至账本...排序服务用来对全网交易达成一致,只负责对交易顺序达成一致,避免了整个网络瓶颈,更容易横向拓展以提升网络效率,目前支持Kafka和Raft两种,Fabric区块链网络的统一/完整性依赖于排序节点的一致性。

1.7K10

研究FabricEtcd的Raft应用

Hyperledger Fabric最新版本Fabric系统的共识模块实现了三种共识算法,其中包括Solo,Kafka以及Raft算法。...Hyperledger Fabric之前版本的核心共识算法通过Kafka集群实现,简单来说,就是通过Kafka所有交易信息进行排序(如果系统存在多个通道,则对每个通道分别排序)。...Raft共识:Raft是Hyperledger Fabric1.4.1版本引入的,它是一种基于 etcd 的崩溃容错(CFT)排序服务。...鉴于此,当有多个组织使用基于Kafka排序服务的时候,其实没有实现去中心化,因为所有的节点连接的都是由一个组织单独控制的Kafka集群。...第四,Raft 是向开发拜占庭容错(BFT)排序服务迈出的第一步。正如我们将看到的,Fabric 开发的一些决策是由这个驱动的。Fabric使用Raft共识算法是向BFT类算法过渡的步骤。

87931

干货 | 基于tendermint实现Hyperledger Fabric的拜占庭容错排序

之前我分享过一篇文章《HyperLedger Fabric携程区块链服务平台的应用实战》介绍了一些携程对于HyperLedger Fabric的落地经验,并重点分享了Fabric框架在代码结构灵活性上的一些认识和在...本文将分享我们Fabric排序服务做的一个延伸。...4、此时,会触发sendChan的监听服务,监听服务会检查交易并将交易通过ch.support.BlockCutter().Ordered方法放入本地队列中等待出,出任务启动orderer节点时时会启动一个...kafka排序与上述例子solo排序的区别是:可以支持多个orderer节点,所有的交易可以请求任何一个orderer节点,请求的orderer节点本地排序后会通过kafka集群将数据同步给其他的...fabric排序方式,需要peer节点将交易proposal 发送给任一orderer节点,kafka排序是orderer节点借助kafka消息队列,而raft排序是orderer节点借助etcd实现区块传递给其他

90220

Hyperledger fabric基础介绍

[节点架构] 一、Peer节点 1.记账节点:所有的Peer节点都是记账 (committer) 节点,负责验证从排序服务接收到区块的交易,维护账本的副本 2.背书节点:部分Peer节点会执行交易并对结果签名背书...二、Orderer节点 1.排序服务节点接收包含背书签名的交易,并进行排序、打包生成区块,广播给Peer节点,保证同一个链上的节点接收到相同的消息,并且有相同的逻辑顺序 2.排序服务可以支持多链的交易处理...,实现了多通道的数据隔离,保证只有同一个链的peer才能访问链上的数据 3.排序服务可选择集中式(Solo)或分布式(Kafka)协议,其中Kafka集群可以实现崩溃故障容错(CFT) 三、CA节点 1...3.区块链网络上所有的操作都会验证用户的身份。...5.交易验证并提交 每个节点会对区块所有交易进行验证,包括验证背书策略以及版本冲突验证(防止双花),验证不通过的交易会被标记会无效(Invalid) 账本更新:节点将读写集更新到状态数据库 ,将区块提交到区块链上

1.4K64

Fabric的6大特性

成员准入 Hyperledger Fabric是用于准入网络的框架,其中所有参与者都具有已知身份。考虑准入的网络时,您应该考虑您的区块链用例是否需要遵守数据保护法规。...性能,可伸缩性和信任级别 Hyperledger Fabric建立模块化架构之上,该架构将事务处理分为三个阶段:分布式逻辑处理和协议(“链码”),事务排序以及事务验证和承诺。...为了说明这一,让我们看一下Hyperledger Fabric v1.0的事务流,如下图所示。 ? image 从图的左侧开始: 1)交易建议由应用程序提交给背书的peer节点。...背书者执行链码以模拟网络对等方中的提议,从而创建一个读/写集。 3)然后背书的peer节点将签名的提案响应(背书)发送回应用程序。...4)应用程序将交易和签名提交给Order服务 5)创建一批或一组交易,并将其交付给提交peer节点。 6)当提交peer节点收到一批事务时 7)验证是否符合背书策略,并检查读/写集以检测冲突的事务。

1.2K20

Hyperledger: 向现有的 Fabric 区块链网络添加一个组织

配备的 Hyperledger Fabric 区块链网络包含两个组织、每个组织两个对等节点,以及一个 Solo 订购服务。... 区块链基础:术语表和用例 适当了解,然后 Hyperledger Fabric 术语表 更深入钻研。...本教程,我们将展示如何将第三个组织添加到一个应用程序渠道,将它自己的对等节点添加到一个已在运行的 Hyperledger Fabric 区块链网络,然后将它加入该渠道。...对于命令行配置更新,确保您至少安装了 Hyperledger Fabric 的 1.1.0 预览版。 (此版本引入了对等节点渠道 signconfigtx 命令,以提交配置更新之前收集多个签名。...对配置更新进行解码并将它包装在一个配置更新信封。 创建新配置交易。 提交新的已签名配置交易来更新渠道。 1 检索当前配置 执行以下命令来检索应用程序渠道 mychannel 上的当前配置

1.1K40

超级账本hyperledger fabric词汇汇总

节点是通道能被所有对等节点探测、并能与之进行通信的一种对等节点。通道的每个成员都有一个(或多个,以防单点故障)节点,允许属于不同成员身份的节点来发现通道存在的其它节点。...对等节点从排序服务收到交易区块,基于背书策略和并发冲突来标注区块的交易为有效或者无效状态,并且将区块追加到对等节点文件系统的哈希链。...通道是构建在“Fabric”网络上的私有区块链,实现了数据的隔离和保密。通道特定的账本通道是与所有对等节点共享的,并且交易方必须通过该通道的正确验证才能与账本进行交互。...CCVC是保持通道对等节点间状态同步的一种方法。对等节点并行的执行交易,交易提交至账本之前,对等节点会检查交易执行期间读到的数据是否被修改。...成员服务许可的区块链网络上认证、授权和管理身份。peer和order运行的成员服务的代码都会认证和授权区块链操作。它是基于PKI的MSP实现。

1.1K00

万字长文,教你用go开发区块链应用

,<< 表示合并到当前数据,* 用来引用 2、Docker 和 Docker Compose Docker 是一个开源的应用容器引擎,可以将应用以及所需要的环境一起打包到一个轻量级、可移植的容器,...题外话:以上这些技能除了 fabric 区块链体系需掌握,如今火热的云原生技术下也一样是基础。...通俗易懂,智能合约就是按照大家约定好的规则编写的业务逻辑代码实现,然后只能通过这些合约来操作区块链网络这个账本。 6、什么是共识 保持账本整个网络同步的过程称为共识。...世界状态:描述了在给定时间的账本的状态。它是账本的数据库。默认情况下,使用 LevelDB 键值存储数据库,可插拔,可替换为 CouchDB 。 交易日志:记录产生世界状态当前值的所有交易。...排序节点负责接受交易并排序排序算法有: SOLO,KAFKA,RAFT,PBFT),最后将排序好的交易按照配置的约定整理为区块之后提交给记账节点进行处理。

3.4K20

Hyperledger Fabric 核心概念

模块化设计:Fabric实现了模块化架构,例如身份、排序、链码等服务和功能,都是可选的可插拔的非常灵活。...排序服务,类似一个裁判的角色,因为不同的交易顺序对最终的交易结果是有很大的影响的,所以这个排序服务主要是为了让所有的节点达成统一的共识,最终实现数据的一致性。...链码服务是一个独立的应用程序,运行在隔离的Docker容器链码部署的时候会自动生成链码的Docker镜像。...为图中蓝色方块 P1 和 P2,区块链网络主要由 Peer 组成; 每个 Peer 上都有一份 账本 的全量副本为红色的 L1,然后 智能合约 是部署每个节点上的为黄色 S1,一个节点可以部署多个...账本由一个区块链(链)构成,并将不可变的、有序的记录存放在区块;同时包含一个状态数据库来记录当前的Fabric状态。每个 通道 各有 一个账本。

66730

fabric进阶—Gossip数据传播协议

Gossip 数据传播协议 Hyperledger Fabric 通过将工作负载拆分为交易执行(背书和提交)节点和交易排序节点的方式来优化区块链网络的性能、安全性和可扩展性。...基于 gossip 的数据传播协议 Fabric 网络中有三个主要功能: 通过持续的识别可用的成员节点来管理节点发现和通道成员,还有检测离线节点。 向通道所有节点传播账本数据。...这是一个重复的过程,以使通道的成员、账本和状态信息同步并保持最新。分发新区块的时候,通道 主 节点从排序服务拉取数据然后分发给它所在组织的节点。...主节点选举 主节点的选举机制用于每一个组织 选举 出一个用于链接排序服务和开始分发新区块的节点。主节点选举使得系统可以有效地利用排序服务的带宽。...一个没有网络分区的稳定状态下,会只有 唯一 一个活动的主节点和排序服务相连。

23510

Fabric基础架构原理(1) | 赠书活动

实际部署,背书节点和确认节点既可以部署同一物理节点上,也可以分开部署。 排序节点(Orderer)主要职责是对各个节点发来的交易进行排序。...成员身份明确的基础上,Fabric可以实现权限控制的管理。 Fabric 网络的组件往往归属于不同的组织,组织之间形成对等的去中心化网络。...通道是部分网络成员之间拥有独立的通信渠道,通道中发送的交易只有属于通道的成员才可见,因此通道可以看作是Fabric的网络中部分成员的私有通信“子网”。 通道由排序服务管理。...创建通道的时候,需要定义它的成员和组织、节点(anchor peer)和排序服务的节点,一条和通道对应的区块链结构也同时生成,用于记录账本的交易,通道的初始配置信息记录在区块链的创世(第一个区块)...每个组织可有多个节点加入同一个通道,这些节点中可以指定一个节点(或多个节点做备份)。节点代表本组织与其他组织的节点交互,从而发现通道所有节点。

73420

链课堂01 | 解密超级账本-Fabric运行机制

Fabric作为非许可网络,采用数字证书机制来实现对身份的鉴别和权限控制,CA节点实现了PKI服务,负责对身份证书的生成、撤销等。...05 共识机制 0.6版本,Fabric支持PBFT(实用拜占庭容错算法)共识算法,1.0及以后版本不再支持。...2、Fabric是准入型网络,对PBFT这种共识算法要求不高。 Fabric 1.0版本共识过程包括背书、排序、和验证三个环节的保障。 ➤背书 Chaincode实例化的时候,需要指定背书策略。...OR(‘Org1.member’, ‘Org2.member’) 请求两个Org的任意一个Org的成员的签名。...➤排序 Orderer的排序分Solo和Kafka两种模式; Solo:单节点排序功能,实验性质,不具备可扩展性和容错,不能够在生产环境使用;Kafka:集群排序,支持CFT容错,支持可持久化和可扩展性

1.3K20

configtx.yaml中文注解 原

configtx.yaml是Hyperledger Fabric区块链网络运维工具configtxgen用于生成通道创世或通道交易的配置文件,configtx.yaml的内容直接决定了所生成的创世区块的内容...这是版本v1.0.0引入的一个新的配置段,当与版本v1.0.x的对等节点与排序节点混合组网时不可使用。 Capabilities段定义了fabric程序要加入网络所必须支持的特性。...例如,如果添加了一个新的MSP类型,那么更新的程序可能会根据该类型识别并验证签名,但是老版本的程序就没有办法验证这些交易。这可能导致不同版本的fabric程序维护的世界状态不一致。...配置仅应用于对等网络,不需考虑排序节点的升级。...# 这个配置段不是用来定义资源或API,而仅仅是定义资源的访问控制策略 # # 用户可以通道定义重写这些默认策略 #---New Lifecycle

91510

如何入职京东、华为、IBM等大厂?你需要学懂这门语言

非许可区块链,参与者不需要经过授权,网络上的所有节点都可以拥有平等提交交易或 者记账的权利,网络的节点并不存在角色区别,都是统一的对等实体。... P2P 网络环境,彼此连接的多台计算机之间都处于对等的地位,各台计算机有相同的功能,无主从之分。一台计算机既可作为服务器,设定共享资源供网络其他计算机所使用,又可以作为工作站。...共识服务可以看作一个提供交付保证的通信组织。共识服务节点的职责就是对交易进行排序,确保最后所有的交易是以同样的序列输出,并提供送达保证服务的广播通信服务。关于共识服务,之后还将详细介绍。...共识服务可以为所有消息提供原子交付保证,也就是说, Fabric 中共识服务保证了消息通信是序列化和可靠的。...目前,Fabric 提供了3种模式实现:Solo、Kafka 和 BFT。 Solo 是一种部署单个节点上的简单时序服务,主要用于开发测试,它只支持单链和单通道。

80580
领券