什么是 Hyperledger Fabric?

进一步了解 Hyperledger Fabric、它的优点、它的工作原理,以及如何开始使用

什么是 Hyperledger Fabric?

Hyperledger Fabric 是一种开源许可区块链框架,由 The Linux Foundation 在 2015 年开始提供。它采用模块化通用型框架,所具有的独一无二的身份管理及访问控制功能使其非常适用于各种行业应用,例如,供应链的追踪和跟踪、贸易融资、忠诚度和奖励,以及金融资产的清算和结算等。

什么是区块链技术?

区块链是一种技术,使用者可以利用这种技术来构建应用程序,让多方可以直接记录事务,而不需要一个可信的中央管理机构来确保事务经过核实。区块链在对等网络来实现这一点,网络中的每个参与者都可以访问记录事务的共享分类账。这些事务采用不可变而且能够以加密方式进行验证的设计。概括来说,区块链技术有三个组成部分:分布式分类账、一致性算法和智能合约。

  • 分类账是保留数据交换完整历史记录的事务记录。分类账采用不可变,仅支持附加文件的设计,网络中的每个成员都可对提交的事务进行独立验证。在区块链技术中,网络的每个成员都要维护一份副本。
  • 一致性算法可帮助确保网络中的成员有已达成共识的方法,从而允许将事务和数据提交到分类账并执行智能合约代码。如果未满足一致性要求,则事务或操作将被视作无效。
  • 智能合约是在区块链网络上执行的代码。它们通常会定义商业合约的规则,并在满足合约前提条件时以编程方式被执行。 

Hyperledger Fabric 的优点

开源
Hyperledger Fabric 平台是一种由 The Linux Foundation 托管的开源区块链框架。它拥有一个活跃而且还在不断发展的开发人员社区。

基于许可
Fabric 网络采用许可制,也就是说,所有参与成员的身份都是已知的,而且经过验证。这项优点在包括医疗、供应链、银行和保险等数据无法对未知实体开放的行业里尤其实用。例如,Hyperledger Fabric 区块链网络上的一家保险公司可以与经过许可的各方分享客户的索赔数据,还能继续保护客户的隐私。

 

管理和访问控制
Fabric 网络由多条通道组成,它们是两个或两个以上具体网络成员之间通信的私人“子集”,网络上的成员可以在私下以机密方式处理事务。区块链网络上的每项事务在某通道上执行,每一方必须经过身份验证与授权才能在该通道上处理事务。这可以提供额外的访问控制层,而且当成员想要限制数据曝光(如竞争对手在同一个网络中)时特别有用。Fabric 还提供 Private Data Collection 功能集,它可将访问通道上特定事务的权限限制于某个参与者子集。

性能
Hyperledger Fabric 专为支持企业级用例而设计,而且可以通过其一致性机制为快速事务吞吐量提供支持。由于 Fabric 是许可区块链框架,它不需要解决在网络上验证事务时可能导致性能变慢的 Byzantine Fault Tolerance 问题。

Hyperledger Fabric 如何运作?

Hyperledger Fabric 网络由唯一的组织(或成员)组成,他们在网络上相互交互。例如,某组织可以是由金融机构所组成的网络中的一家银行,或者供应链网络中的装运合作伙伴。从 Fabric 组件的角度来看,每个组织都有一个 Fabric 证书颁发机构以及一个或多个对等节点。Fabric 网络还提供网络中全部组织共享的排序服务,该组件可以帮助处理网络的事务。我们将在下方分享关于这些概念和组成部分中每一项的更多详细信息:

网络中的某个组织由特定于该组织的根证书定义。这个组织中的用户和其他组件(如对等节点—见下文说明)也可以被证书所识别,而此类证书均从该根证书派生而来,可确保网络中的其他组织可以将某用户及其组织相关联。这些证书还会指定网络上每个实体的权限,如对某通道的只读和完全访问权限等。

组织的根证书存储于 Fabric 证书颁发机构 (CA) 当中。Fabric CA 还会为组织中的用户颁发证书,并且处理其他相关操作。企业级 Fabric CA 利用各种组件,而且可以通过硬件安全模块 (HSM) 以各种方式被部署,从而保护根证书的安全。

组织还可以创建一个或多个对等节点,将其作为组件来代表该组织执行操作。具体来说,对等节点会许可网络上提议的事务,存储与执行智能合约代码(在 Fabric 中被称作链码),并且在本地存储一份可访问的分类账副本。Fabric 客户端通常会与对等节点交互以读取分类账,添加新链码到网络,或者提议新事务。对等节点一般会在其自己的计算机(如 Amazon EC2 实例)上运行。

最后,Fabric 网络还包含网络全部成员共享的排序服务。该排序服务会确保网络上的新事务在新的区块中被正确排序,而且有适当背书。然后,排序服务会向每个组织中的对等节点广播新的事务区块。对等节点会使用此新区块更新其本地的分类账副本。

Hyperledger Fabric 事务处理流程

1.当客户端应用程序向每个组织中的对等节点发送事务提议以寻求获得背书时,事务处理流程就会启动。

2.对等节点会验证提交客户端的身份与提交该事务的权限。接下来,它们会模拟提议事务的结果,如果与预期相符,则将背书签字发回到客户端。

3.客户端会从对等节点收集背书,一旦收到背书策略中定义的适当数量背书,它会将事务发到排序服务。

4.最后,排序服务会检查该事务是否具有适当数量的背书,从而满足背书策略的要求。然后,它会以时间顺序对事务进行排序,将已获得批准的事务打包置于区块中,并且发送此类区块到每个组织的对等节点。对等节点从排序服务收取新的事务区块,接着对该区块中的事务进行最后验证。一旦验证完成,新区块会被添加到分类账,分类账的状态也会得到更新。新事务便提交完毕了。

Hyperledger Fabric vs.Hyperledger Sawtooth

Hyperledger Sawtooth 是另一种由 The Linux Foundation 在 Hyperledger 项目下托管的开源区块链平台。Hyperledger Fabric 和 Hyperledger Sawtoot 网络有不同的管理功能和一致性算法。

特性

HYPERLEDGER FABRIC

HYPERLEDGER SAWTOOTH

权限

专为许可网络量身打造。

支持许可和无许可网络。

隐私和网络管理

在一组参与者之间提供完全数据隔离。由 Hyperledger Fabric 证书颁发机构 (CA) 和通道实现严格的网络管理。 所有网络对等节点都有访问全部事务数据的权限。不提供通道或证书颁发机构 (CA) 功能。

事务处理流程

独一无二的执行-排序-提交背书模型,事务最初会在一组对等节点上执行,而排序服务则会处理打包和传输。

 

可在数据级别或合约级别定义所需的背书节点组。此方法让框架更具扩展性,并避免合作代码中的不确定性。

传统排序-执行-提交流程。Sawtooth Validator 会处理事务,对其进行排序和传输。 

一致性算法

可插拔一致性算法允许根据环境需要切换排序节点。

 

Amazon Managed Blockchain 的排序服务使用 Amazon QLDB 技术构建,具有不可变的更改日志,可准确维护区块链网络中所有事务的完整历史记录,确保数据的持久性。

使用默认的“所用时间证明 (PoET)”算法,它是一种依赖专用硬件组件的 Byzantine Fault 一致性机制。在此处了解更多信息。

智能合约语言

Go、Java、Node.js

Go、Java、Python、Rust

Hyperledger Fabric 的行业用例

供应链

供应链行业是供应商、制造商和零售商的全球分布式网络。Hyperledger Fabric 网络可以通过在网络中提高事务的透明度和可追踪性来改进供应链流程。在 Fabric 网络上,具有分类账访问权限的公司可以查看相同的不可变数据,实施责任制并降低造假的风险。除此以外,生产更新会被实时添加到分类账,在发生产品召回或食品污染等事件期间更快速、更轻松地追踪其真实性。

交易和资产转移

交易需要许多组织彼此协作,如进口商、出口商、银行、航运公司和海关部门。使用 Hyperledger Fabric,金融和贸易联盟可以轻松创建区块链网络,各方都可以通过电子方式交易,并处理与贸易相关的文书工作,不需要借助中央可信机构来完成。一些其他流程需要在利益相关者之间来回处理贸易相关文书(需要 5-10 天才能完成),但使用 Managed Blockchain 构建的 Hyperledger Fabric 网络中的事务可以即时处理。

保险

保险诈骗每年让保险行业遭受数十亿美元的损失,但借助于 Hyperledger Fabric,保险公司可以参考存储在分类账上的事务数据,从而识别重复或虚假索赔。区块链还可以通过使用智能合约自动将过错方的偿付款发回到保险公司,更快地处理多方债权转移索赔。另外,保险公司还可以将客户数据存储在分布式分类账上,通过智能合约对其身份文档验证进行自动化,进而使用 Hyperledger Fabric 简化“了解客户”(KYC) 流程。

Amazon Managed Blockchain 上的 Hyperledger Fabric

Amazon Managed Blockchain 是一项完全托管的服务,通过这项服务,您只需点击几次,即可轻松建立和管理可扩展的 Hyperledger Fabric 区块链网络。Amazon Managed Blockchain 省去了创建网络所需的开销,并可自动扩展以满足运行数百万个事务的数千个应用程序的需求。您的网络启动并运行后,您便可使用 Managed Blockchain 轻松管理和维护您的 Hyperledger Fabric 网络。它会管理您的证书,让您可以轻松邀请新成员加入网络。 

只需几分钟时间,使用 AWS 开始在 Amazon Managed Blockchain 上构建 Hyperledger Fabric 区块链网络,见此处

了解有关定价的更多信息
了解关于初学者和标准定价版本的更多信息。
了解更多>>
注册免费账户
立即快速注册 AWS 账户。
注册>>
Getting started
开始构建
开始在 AWS 管理控制台上使用 Amazon Managed Blockchain。
开始使用>>