在fabric中,共识过程意味着多个节点对于某一批交易的发生顺序.合法性以及它们对账本状态的更新结构达成一致的观点.满足共识则意味着多个节点可以始终保证相同的状态,对于以同样顺序到达的交易可以进行一致的处理. 具体来看,fabric中的共识包括背书.排序和验证三个环节的保障. 我们先来研究下背书策略. 一.什么是背书策略 chaincode在实例化的时候,需要指定背书策略.这里的背书策略就是需要什么节点背书交易才能生效. 发起交易的时候,发起端(一般是SDK),需要指定交易发给哪些节点进行背书验…
Hyperledger Fabric共识算法 区块链系统是一个分布式架构,交易账本信息由各个节点管理,组成一个庞大的分布式账本.在分布式系统中,各个节点收到的交易信息的顺序可能存在差异(例如,网络延迟.主机处理性能),这会导致账本信息的状态不一致,例如,小王账户只有10元,但是他同时转账给小李和小张各10元,并且将这两条交易信息分别发送到两个分布式节点上,如果不对这两条交易进行排序校验,那么,小王实际消费了20元(所谓的双花问题).所以,在区块链系统中,我们需要一套机制,来保证交易的先后顺序,这…
Gossip算法正如它的名字,小道消息只需要有人传播一次,那么过一段时间,所有人都会知道,就像新冠病毒一样,所以Gossip算法也有其它的别名"传染病扩散算法"."谣言传播算法"等等.在Fabric中Gossip算法用于区块的传播,即共识后将得到的区块广播给组织内和其它组织.本节会介绍Gossip算法的设计原理.数据结构和部分核心源码的实现,例如Push算法.Pull算法等. 1. 设计原理 Gossip协议可以抽象成广播,即发送节点向其它节点传播同样的消息.在节点…
文章目录 什么是Hyperledger Fabric? Hyperledger架构是怎么工作的? Hyperledger交易如何执行 总结 Hyperledger Fabric基础知识 本文我们会介绍Hyperledger Fabric的基础知识,并了解如何充分利用这个多功能的区块链框架. 区块链技术为创新提供了丰富的机会.它提供了一种新的交易方式,从而可以从根本上改变业务的实现. 那么,在众多的区块链框架中,开发人员应该首先掌握哪个框架呢?IBM开发的Hyperledger Fabric肯定是…
介绍 HyperLedger Fabric是一个基于模块化架构的分布式账本解决方案平台,它拥有深度加密.便捷扩展.部署灵活及可插拔等特性.它设计之初的目的是支持不同组件的可插拔实现,并适应整个经济生态系统中存在的复杂性和高精度性. HyperLedger Fabric与其它的区块链平台解决方案相比,提供了一种独特的扩展便捷和灵活部署的架构.它更多的适用于联盟链形式,即适合企业级之间的区块链联盟方向,建立在可信任的基础上.如果是企业级区块链部署的话,建议可以采用HyperLedger Fabric…
背书策略 背书策略用于指导peer如何确定交易是否得到了的认可.当一个peer接收到一个事务时,它会调用与事务的Chaincode相关联的VSCC(验证系统链代码),作为事务验证流程的一部分,以确定交易的有效性.一个交易包含了一个或多个peer背书节点中的背书支持.VSCC的任务是做出以下决定: 所有的背书都是有效的(也就是说,它们是有效的签名,而不是预期的消息). 有适当数量的背书 背书来自预期的来源(s) 背书策略指的是第二和第三点其中的一种方式. CLI中的背书策略语法 在CLI中,使用一…
 一  checkConfig  Before     1.1  private static final TestConfig testConfig = TestConfig.getConfig();          这里加载一个配置文件(test路径/src/test/java/org/hyperledger/fabric/sdk/testutils.properties,文件不存在就加载代码中写死的默认配置),     配置文件需要设置peer,orderer,ca,eventhub的地…
Fabric 的网络节点本质上是互相复制的状态机,节点之间需要保持相同的账本状态.为了实现这个目的,各个节点需要通过共识( consensus )过程,对账本状态的变化达成一致性的认同. Fabric 的共识过程包括 3 个阶段:背书.排序和校验. 背书 在背书( endorsement )阶段中,背书节点对客户端发来的交易预案进行合法性检验,然后模拟执行链码得到交易结果,最后根据设定的背书逻辑判断是否支持该交易预案.如果背书逻辑决定支持交易预案,它将把预案签名后发回给客户端. 客户端通常需要根…
☞ ░ 前往老猿Python博文目录 ░ 在Hyperledger Fabric区块链中,有背书节点进行背书,Hyperledger Fabric 使用背书策略来定义哪些节点需要执行交易. Hyperledger Fabric在区块链交易方面采取了一个新颖的思路,将智能 合约的执行与账本的更新分开使它可以提高交易吞吐量,支持更细粒度 的隐私控制,实现更灵活强大的智能合约.而这些特性得以实现的一个 关键因素就是在交易加入账本之前进行显式地交易背书. 1.背书 背书"这个词源来自银行票据业务,传统意…
Hyperledger Fabric(v1.2.0)代码分析1--channel创建 0. e2e_cli Hyperledger Fabric提供了一个e2e的例子,该例中创建了一个基础的区块链网络,并进行了交易并查询.麻雀虽小,五脏俱全,我们可以根据e2e的例子来对Fabric区块链网络有一个基本的认识,包括网络创建流程.智能合约(chaincode)实现等.作为底层技术开发者,可以根据e2e的例子来追踪整个代码流程,从而对fabric源码结构有一个清晰的认识. ele示例的区块链网络由以下…