Hyperledger 和企业区块链
与本书中讨论的大多数其他区块链系统不同,Hyperledger 从未有过初始 硬币报价 ( ICO ),也没有公开交易的代币。这是因为 Hyperledger 本身并不是区块链,而是用于创建新区块链的技术集合。此外,这些区块链技术是为企业用例而不是公共市场明确设计和构建的。
在本章中,我们将介绍以下内容:
- Hyperledger 的历史
- 关于当前六个 Hyperledger 项目的关键细节
- 用于支持生态系统的 Hyperledger 工具概述
- 关于如何为项目选择 Hyperledger 技术的建议
Hyperledger 的名字并不适用于单一的技术,而是以 Hyperledger 的名字捐赠给 Linux 基金会的区块链技术的集合。
Hyperledger 项目的成员包括主要的区块链公司,如 Consensys、R3 和 Onchain,以及大量专注于企业的技术公司,如百度、思科、富士通、日立、IBM、英特尔 NEC、红帽和 VMware。除了这些公司,由于区块链在金融科技领域的明确应用,许多金融服务公司也加入了进来。金融服务成员包括 ANZ 银行、BYN 梅隆银行、JP 摩根、SWIFT 和富国银行。看到商业软件咨询下一波浪潮的机会,主要集成商也加入了进来——埃森哲、CA Technology、普华永道和 Wipro,以及许多其他公司。
最近,亚马逊、IBM 和微软都推出了以 Hyperledger 技术为特色的区块链即服务产品。
总账的历史
Hyperledger 项目成立于 2015 年,当时 Linux 基金会宣布创建 Hyperledger 项目。它是与包括 IBM、Intel、Fujitsu 和 JP Morgan 在内的许多企业联合创建的。目标是围绕区块链技术改善和创建行业协作,以便它可用于最适合区块链颠覆的关键行业中的复杂企业用例:技术、金融和供应链。
该项目在 2016 年获得了实质性进展,当时进行了首批技术捐赠。IBM 捐赠了后来被称为 Hyperledger Fabric 的东西,英特尔捐赠了后来成为 Hyperledger 锯齿的代码库。
与区块链领域的大多数项目不同,Hyperledger 从未发行过自己的加密货币。事实上,Hyperledger 的执行董事已经公开声明永远不会有一个。
超级分类帐项目
如前所述,hyperledger 不是单一的区块链技术,而是成员公司捐赠的技术的集合。虽然长期目标是加强项目之间的集成,但目前大多数 Hyperledger 项目都是独立运行的。每个项目的核心代码库都是由一个或多个 Hyperledger 成员组织捐赠的,基于他们在开源代码并将所有权交给 Linux 基金会之前试图在内部解决的问题。
超级分类帐 Burrow
Hyperledger Burrow 是以太坊虚拟机和区块链技术的重新实现,但是有一些关键的变化。首先,Burrow 没有使用公共以太坊链使用的工作证明共识算法,而是围绕 Tendermint 共识算法进行设计(参见第七章、达成共识)。这意味着在基于洞穴的项目中没有矿工和采矿。
第二,Hyperledger 挖洞是许可的——被允许参与 Hyperledger 挖洞网络的计算机是已知的并被授予访问权,并且计算机签名块(称为验证器,如在 Tendermint 中)都是已知的。这和以太坊很不一样,任何人都可以匿名下载以太坊软件,加入网络。
为 EVM 编写的智能合约仍然大部分有效。由于共识的改变,天然气的使用方式也发生了变化。在公共以太坊区块链,每笔交易都要耗费汽油,这取决于交易的复杂程度,而且每个街区都有汽油限额。根据网络负载,参与者必须为交易所需的天然气支付可变成本。在陋居,这些复杂性大多被免除了。每笔交易都会自动获赠基本数量的汽油。因为气体仍然是有限的,陋居能够保证所有的交易最终完成——无论是成功还是失败——因为它们耗尽了气体。
欲了解更多关于 EVM、solidity 语言以及与 Hyperledger Burrow 共享的以太坊的其他方面,请参见第 12 章、以太坊 101 ,至第 15 章、以太坊开发。
超分类帐锯齿
Hyperledger 锯齿像 Hyperledger 家族的其他成员一样,是为许可(私有)网络而不是公共网络(如以太坊、比特币等)构建的。作为一个面向企业的区块链系统,它旨在允许不同的公司使用区块链和智能合同进行协调。锯齿波最初由英特尔开发,使用一种独特的共识算法,称为运行时间证明,或 T2 诗人。
PoET 使用基于抽签的系统进行领袖选举。使用称为可信执行环境 ( TEE )的特殊英特尔技术,以及一些英特尔芯片组上提供的软件保护扩展 ( SGX ),领导者由每个节点选举产生,随机产生一个等待时间,最短的等待时间优先。因为生成等待时间的代码在 TEE 中,所以可以通过不等待由随机时间生成器生成的时间量来验证每个节点正在运行适当的代码并且没有排队成为领导者。因此,领导者(和区块发行者)的选举非常快,这反过来允许区块链快速操作。
锯齿建筑
sawtook有一个可插拔的架构,由 sawtook 核心、应用程序级和事务系列以及共识机制(通常是 PoET,但假设可以与其他组件一起插拔)组成。我们将在下面的小节中详细研究它们。
交易系列
因为锯齿是一个可插拔的、面向企业的架构,所以应用层是高度可配置的。每个基于锯齿的区块链允许基于所谓的事务族进行事务。事务家族决定了锯齿区块链上允许的操作种类。例如,使用 Seth 交易家族,可以允许智能合约,比如以太坊。在赛斯之下,所有可能的基于以太坊的契约和基于以太坊的契约的交易都是允许的,连同所有可能的错误和这样的自由所产生的问题。
基于锯齿的区块链可以同时运行多个事务族。事实上,这很常见,因为锯齿附带的事务族之一是 settings 族,它将系统范围的配置设置直接存储在区块链上。在大多数情况下,这个事务家族和其他一些由业务用例组成的事务家族将并行运行。此外,由于多个事务族可以同时运行,这意味着业务逻辑可以被隔离,并作为独立的事务族跨多个区块链实现重用。
由于许多企业只有少量有效的业务规则和业务成果,因此可以通过创建自定义事务处理系列来自定义区块链上的可用操作。例如,运输公司可以使用锯齿跟踪包裹的位置,唯一有效的交易可能是新包裹、接受包裹、释放包裹、运输中的包裹、更新包裹位置和递送包裹。通过限制可用的事务,可以减少错误和失误的数量。以运输公司为例,网络参与者可以是卡车运输公司、仓库等等。对于在卡车和仓库之间移动的包裹,两个网络参与者将在区块链上分批地分别发出包裹释放和包裹接受交易。这就把我们带到了锯齿中的下一个概念:事务批次。
交易和批次
在锯齿中,事务总是批处理的一部分。一个批是一组集合在一起的事务,要么全部成功,要么全部失败。如果一个事务需要自己处理,那么它应该在只包含那个事务的单个批处理中。以运输公司为例,可以对交易“包裹发放”和“包裹接受”进行编程,这样,只有当它们的反向交易是同一批的一部分时,它们才会成功,从而强制成功移交或抛出错误。下图显示了事务处理批的数据结构:
Sawtooth 中的事务和批处理是在较高层次上抽象的,因此它们可以由自定义事务族和任意编程语言创建。正因为如此,用 Java、Python、Go、C++和 JavaScript 编写智能合约和事务系列是可能的。要用任何语言编写代码,对事务都有另一个限制:序列化,即从计算机上的内存结构转换为可以通过网络发送的固定二进制。不管语言是什么,序列化的方法必须有相同的输出。在锯齿中,所有的事务和批处理都以一种叫做协议缓冲区的格式编码,这种格式是由 Google 内部创建的,并于 2008 年发布。协议缓冲区是一种在计算机之间实现固定的高性能数据交换方法的解决方案,它独立于编程语言和计算机体系结构。
关键部分
锯齿中的事务族和事务需要开发人员创建一些东西。请考虑以下情况:
- 首先,您需要每个事务的协议缓冲区定义,即将要存储什么的数据模型
- 其次,您需要一个事务处理程序来处理作为事务家族一部分的传入事务
- 最后,有必要使用核心 SDK 向事务处理器注册处理程序
锯齿包含基于 Python 的源代码,作为 GitHub 上基于设置和基于身份的事务系列的示例。接下来,我们将介绍 Hyperledger Fabric,这是另一种面向企业的区块链技术。
超分类帐结构
与锯齿一样,Hyperledger Fabric 旨在成为高度模块化和可定制的面向企业的区块链解决方案。Hyperledger 结构既是私有的又是许可的。这意味着,像锯齿一样,默认情况下,Hyperledger 区块链对公众来说是不可见的,并且没有也不会有可在交易所交易的令牌。区块链的用户必须拥有经过验证的身份,并通过使用会员服务提供商 ( MSP )加入区块链。这些 MSP 是在系统上配置的,可以有多个,但是所有成员必须被一个或多个 MSP 成功授予访问权限。Fabric 还有许多特殊的工具,使它的功能特别全面,我们将在后面介绍。
架构选择和特性
Hyperledger Fabric 是围绕一些被视为对企业用户至关重要的关键功能和用例而设计的。
核心是账本本身。分类账是一组块,每个块包含一组交易。事务是更新区块链状态的任何东西。反过来,交易由安装在区块链上的智能合约代码执行(称为链码)。我们来看看区块和交易是如何形成的。
每个块都是按顺序排序的,每个块内部是一组事务。这些事务也以特定的顺序存储。与其他区块链不同,事务的创建和最终给出的序列不一定在同一时间或同一台计算机上执行。这是因为事务的排序和事务的执行是分开的。在 Hyperledger Fabric 中,用于操作区块链的计算机可以在三种不同的模式下运行(节点类型);这些措施如下:
- 客户端:客户端代表区块链的用户,向网络提交动作和事件,作为应用程序的一部分。
- Peer:Peer 处理传入的事务以进行验证,并处理由于事务和链代码执行而导致的更新状态变化。一旦他们执行了一个交易,他们就把结果广播到网络上,这样交易就可以由订购者来处理(见下一个角色)。
- 订购者:当对等节点执行事务时,订购者节点查看所有已执行的事务,并决定它们被认为在区块链中发生的最终顺序。排序服务节点决定事件的最终顺序,从而决定将被写入区块链的下一个块的最终事件集。
请务必注意,在一个结构区块链上,一台计算机最多可以充当所有这三种节点类型,但这不是必需的。虽然 Hyperledger 网络上的同一台计算机既可以执行交易,也可以对交易顺序进行排序,但 Hyperledger 能够通过提供不同的服务来扩大规模。为了说明这一点,请看下图(来自 Hyperledger 文档):
如您所见,传入的交易首先到达对等方,对等方使用链码/智能合约执行交易,然后将成功的交易广播到订购服务。一旦被接受,排序服务就决定事务的最终顺序,产生的事务集被重新传输到对等节点,对等节点将最后的块写到链上。
组织焦点
作为一个面向企业的系统,Fabric 区分对等方和订购方(区块链网络上的节点)以及拥有它们的组织。结构意味着在组织之间创建网络,运行区块链的节点作为该组织的代理来执行此操作。这样,每个节点及其权限都与其所代表的组织相关联。这是 Hyperledger 的另一个图表:
如您所见,每个网络节点代表参与组织运营区块链网络。这与以太坊和比特币等网络不同,在这些网络中,网络是由一组独立地向网络贡献资源的计算机创建的,或者至少被网络视为独立地这样做,无论谁拥有它们。在 Hyperledger Fabric 中,创建共享分类帐的组织通过以对等节点和排序节点的形式贡献资源来为网络做出贡献。这种区别很微妙,但却至关重要。在大多数公共网络中,想法是允许计算机协调,但在结构中,想法是允许公司协调。拥有组织向他们的每个对等方提供签名的数字证书,证明他们是某个组织的成员。然后,该证书允许每个节点通过 MSP 连接到网络,授权访问网络资源。组织与私人计算机的焦点将我们带到 Hyperledger Fabric 的另一个面向企业的特性,这是许多企业需求所必需的:私人渠道。
私人频道
Hyperledger Fabric 有一个重要且独特的功能,称为私人频道。一个私有频道允许一部分成员在一个基于织物的区块链上创建一个新的区块链,这个新的只对他们是可观察的和难以驾驭的。这意味着,尽管 Fabric 已经是私有的并得到许可,但该私有区块链的成员可以创建一个更小但更具排他性的交易信息链,这些信息不能在整个会员网络中进行交易。因此,Fabric 能够支持不可能或不适合广播的关键使用案例(如法律通信),即使是在相对专用的网络上。
例如,如果 Hyperledger Fabric 用于建立物流网络,则主区块链可用于跟踪包裹,但定价投标可在私人渠道上进行。该网络的参与者将是许多运输提供商、材料提供商和一组买家。买方可以向区块链发出通知,表示他们接受转让某些供应品的投标,然后他们可以在自己与所有运输商和供应商之间建立私人渠道。供应商和运输公司可以给买方时间和成本价,而不把这些信息公开给他们的竞争对手。虽然是私有的,但所有这些交换都将被编码到区块链上,以用于记录保存、法律遵从等。此外,如果公司政策类似于接受第二低的报价,那么整个过程可以通过智能合同实现自动化。
资产
在 Hyperledger Fabric 中,资产被定义为可以被赋予值的任何东西。虽然这可以用来交换不同的法定货币,但资产可以用来表示抽象的东西,如知识产权,或更有形的东西,如一批鲜鱼。
在 Fabric 中,资产在内部作为简单的键-值对进行处理,它们的状态存储在分类帐中,并可通过链码进行修改。Hyperledger 中的资产可以履行 ERC-20 和 ERC-721 代币以及其他代币在以太坊中执行的所有职责。任何可以用令牌格式描述的内容都可以作为资产存储在 Hyperledger Fabric 中。
智能合同
在 Hyperledger Fabric 中,智能合约被称为链码。与以太坊不同,chaincode 并不直接嵌入分类帐本身。相反,chaincode 安装在每个对等节点上,并与分类帐交互,以读取和更新关于 chaincode 控制的资产的状态信息。因为链码是由所有对等体签名和批准的,并且因为使用一段链码的每个对等体必须验证分类帐上的任何状态变化,所以该系统仍然允许使用智能契约的分布式和可信的一致意见。为了提供一致性,chaincode 本身运行在一个隔离的 Docker 容器中。
由于分布式分类账和链码的模块化性质,可以使用多种编程语言来开发智能合同;但是,目前支持的选项有限。有仅用于 Go 和 Node.js 的全功能 SDK 包,最终计划添加 Java。
织物的优点
Fabric 是 Hyperledger 项目中最受欢迎的项目之一。它是高度模块化的,旨在跨公司协调,私有通道功能实现了公共链上不可能实现的安全功能,甚至是大多数私有链。此外,Hyperledger Fabric 拥有Composer—一个用于设计区块链应用程序的可视化工具。我们将在稍后的 Hyperledger 工具部分讨论 Composer。
接下来,我们将介绍一个 Hyperledger 项目,旨在将区块链引入移动设备。
超级分类帐 iro
Hyperledger Iroha 是一个用 C++编写的项目,由 Sorimitsu 贡献。该项目的目标是提供一个可移植的基于 C++的区块链实现,可以在移动设备上使用。iOS 和 Android 操作系统,以及 Raspberry Pi 等小型计算机,都能够高效地运行紧密编写的 C++代码。为了让事情变得更简单,Iroha 为开发者提供了 iOS、Android 和 JavaScript 库。
与以太坊的一个主要区别是,Hyperledger Iroha 允许用户通过使用系统中的预建命令来执行常见功能,如创建和转移数字资产。这消除了为最常见的功能编写繁琐且难以测试的智能合约的需要,使开发人员能够以更低的风险更快地完成简单的任务。例如,要在 Iroha 上创建一个新的令牌类型,只需要一个命令— crt_ast
。为了使事情变得更简单,Iroha 有一个命令行界面,它将指导新用户创建资产,而无需编写任何代码。
如果说锯齿和 Fabric 的目标是完整性,那么 Iroha 更倾向于易用性和设备兼容性。
印度超级分类帐
区块链技术的一个更常见的用例是身份验证和授权。你可能经历过网络上的问题,你要么需要记住许多用户名和密码,以向另一个提供商确认你的身份,如谷歌或脸书。这里的问题是,你必须信任谷歌、脸书或其他提供商来管理你的身份并保证其安全。这就产生了单点故障,并允许一个集中的机构来控制谁的身份是有效的以及他们拥有什么权利。这个生态系统显然是破坏和分散的目标。
Hyperledger Indy 是区块链的一个项目,围绕去中心化、自我声明的身份而构建。Indy 的目标是提供用于创建数字身份的工具和库,这些数字身份可以在区块链上进行管理,并且可以与需要身份验证的其他应用程序和用例进行互操作。
虽然 Fabric、Sawtooth 和 Iroha 都内置了某种级别的身份机制,但 Indy 是专门面向身份管理的,供可能无法在区块链上运行的应用程序使用。因此,Indy 可以用来为 web 应用程序、公司资源等提供身份服务。现有的公司包括 Sovrin(他捐赠了最初的 Indy 代码库)和 Every。
Hyperledger 中的工具
任何应用程序都有一个经常被忽视的方面,那就是需要有用的工具来管理应用程序的生命周期。工具,比如简化部署、调试和设计的软件,可以极大地提高系统的易用性,对开发人员和用户都是如此。大多数公共区块链由于缺乏高质量的工具和支持而受到严重阻碍。然而,Hyperledger 生态系统继续投资于构建优秀的支持工具。
超大型卡尺
任何系统的一个共同需求是基准测试。 Hyperledger Caliper 是一款面向区块链的基准测试工具,旨在帮助区块链建筑师确保系统能够足够快地运行,以满足托管组织的需求。Hyperledger Caliper 将使用一组预定义的常见用例来报告各种关键性能测量,如资源使用情况、每秒交易量 ( TPS )、交易延迟等。
使用 Caliper,开发区块链应用程序的团队可以在构建智能合同和交易逻辑时进行持续的测量,并使用这些测量来监控性能变化。卡尺与锯齿、印第和织物区块链系统兼容。
超级分类帐编辑器
Hyperledger Composer 是一款设计工具,用于在区块链上构建智能合同和业务应用程序。它被设计用于链码和资产数据模型的快速原型,用于 Hyperledger Fabric。作为一个特定于结构的工具(到目前为止),它主要是围绕帮助 Hyperledger 结构特定的概念而设计的,如资产、身份管理、交易以及用于支持所有这些项目之间的业务规则的结果链代码。
它不是一个“一劳永逸”的工具,人们可以从零开始到生产建立一个完整的生态系统,而是为快速可视化原型设计,以快速启动和运行可测试的应用程序,更好的细节直接在代码库中迭代。IBM 在 https://composer-playground.mybluemix.net/editor 举办了一场在线演示。
Composer 的主要用户是区块链开发人员(尤其是新开发人员)和一些技术业务用户。它非常适合作为开发区块链应用程序的敏捷过程的一部分,允许开发人员、网络管理员和技术业务用户可视化网络和在其上运行的代码。
超级分类帐大提琴
如果 Composer 用于帮助构建基于 Fabric 的区块链,那么 Cello 就是一个工具,用于帮助将区块链部署到各种服务器和云服务。Cello 可用于管理区块链的基础设施,或以区块链即服务的方式推出新的区块链。常见的生命周期和部署任务包括启动、停止和删除区块链,将新节点部署到现有区块链,以及抽象区块链操作,以便它可以在本地机器、云中、虚拟机中运行,等等。Cello 还允许监控和分析。
Cello 主要是一个工具,用于开发团队和生产运作之间的联系。它主要针对 Hyperledger Fabric 项目,但对锯齿和 Iroha 的支持是为了将来的开发。
Hyperledger Explorer
Hyperledger Explorer 是一个区块链模块,是 Linux 基金会主持的 Hyperledger 项目之一。Hyperledger Explorer 旨在创建用户友好的 web 应用程序,它可以查看、调用、部署或查询块、事务和相关数据、网络信息(名称、状态、节点列表)、链代码和事务系列,以及存储在分类帐中的任何其他相关信息。Hyperledger Explorer 最初是由 IBM、英特尔和 DTCC 提供的。
总帐被套
有时候,多个区块链能够进行通信是有意义的。这就是总账被套的用武之地。Quilt 是一个通过实现一个 Interledger 协议 ( ILP )来促进跨区块链通信的工具。ILP 是一种通用规范,适用于所有区块链,允许跨分类帐通信,最初由 ripple labs 创建。有了 ILP,两个分类帐(不一定是区块链)可以相互协调,从一个分类帐到另一个分类帐交换值。
ILP 是一种协议,可以使用任何编程语言或技术来实现,只要它符合标准。正因为如此,它可以用于连接多个完全独立的分类帐,甚至是具有完全不同的架构的分类帐。这些分类账不必是区块链,但可以是任何会计制度。在 ILP 中,跨分类帐通信主要通过称为连接器的参与者进行。请看来自 interledger.org 的的下图:
ILP 通过一组连接器连接分类帐。连接器是一个系统,它提供向目的地转发内部分类器通信的服务,类似于数据包在互联网上的点对点转发。ILP 通信数据包从发送方发送到一系列连接器,最终到达接收方。
连接器是该序列中的可信参与者,并且发送方和所有中间连接器必须明确地相互信任。与其他面向区块链的技术不同,ILP 不涉及不可信的交换。但是,发送方和每个连接器只需要信任链中最近的链接,就可以正常工作。
Quilt 是 ILP 的实现,代表 ripple labs、Everis 和 NTT 数据公司捐赠给 Hyperledger 项目。这些组织还赞助了专门的人员来帮助改进主要用 Java 编写的被子代码库。
工具之间的关系
织物、大提琴、作曲家、探险家和卡尺之间的区别可以描述如下:
- Fabric 是应用程序本身,也是业务逻辑最终驻留的地方
- Composer 是帮助构建这种逻辑和最终链代码的工具
Fabric 和 Composer 将主要参与区块链项目的开发阶段,随后是 Caliper 的性能测试:
- Cello 和 Explorer 是处理项目运营方面的工具。DevOps 团队使用 Cello 跨服务器和虚拟机部署和扩展区块链应用程序
- Explorer 是一个监控工具,用于检查不同分类帐中的情况
最后,Hyperledger Quilt 可用于将不同的分类帐和区块链连接在一起。例如,Quilt 可以用于从基于结构的系统到公共以太网、ACH 银行系统或以上所有系统的通信。
因此,Hyperledger 项目为基于区块链的应用程序生态系统的端到端创建、操作和互操作性提供了工具。
您应该使用哪个 Hyperledger 项目?
考虑到 Hyperledger 中的众多子项目都集中在业务用例上,如果对使用哪一个有些困惑也就不足为奇了。这是可以理解的,但好消息是,在大多数情况下,构建合适的项目是明确的。
到目前为止,最流行和最完善的框架是 Hyperledger Fabric。Fabric 还有亚马逊和微软的区块链即服务支持。此外,Composer、Cello 和 Caliper 工具都可以与最新版本的 Fabric 配合使用。对于绝大多数项目来说,Hyperledger Fabric 将是最令人感兴趣的项目。
第二个最明显的选择是锯齿。对于供应链解决方案,锯齿已经有了一个参考实现。除此之外,锯齿对用多种语言编写智能合约有更好的支持,而 Hyperledger 只支持 Go 和 JavaScript。除此之外,锯齿核是用 Python 写的。Python 是数据科学中非常流行的语言,这个领域经常与区块链技术配对。
最后的选择是 Burrow,它很适合从以太坊移植的技术,或者需要与公共以太坊网络接口的技术,以及 Iroha,它更适合需要在移动设备或其他小型机器上运行区块链的项目。
使用超级分类帐
像许多区块链技术一样,Hyperledger 生态系统相对较新,许多项目甚至还没有发布完整的 1.0 版本。虽然有大量的开发活动和多个工作系统已经投入生产使用,但是系统作为一个整体是支离破碎的。例如,锯齿是用 Python 写的,Fabric 是用 Go 写的,Quilt 是用 Java 写的,等等。即使是在 Hyperledger 家族中,也很难使用一套同质的技术来实现端到端的实现。
此外,Hyperledger 对私有网络的关注对于那些希望拥有公共组件的项目来说是一个问题。区块链技术的吸引力之一是透明度。一个通过公众使用他们的技术来寻求最大透明度的项目可能需要寻找其他地方,或者找到一种方法在 Hyperledger 和公共网络之间建立桥梁——可能通过使用 Quilt 和 ILP。
同样,希望通过 ICO 筹集资金的项目或许应该去别处看看。很少有项目尝试使用 Hyperledger 作为 ICO 的一部分,据我们所知,这些项目中没有一个真正成功地筹集了资金。Hyperledger 仍然强烈倾向于私有网络——它在这方面取得了巨大的成功。
摘要
现在,您已经对组成 Hyperledger 的不同子项目有了很好的了解,并且知道了可以用来构建基于 Hyperledger 的项目的工具。Hyperledger 是一套为企业构建私有区块链网络的技术,与以太坊和比特币等公共和可交易网络相对。Hyperledger 系列由六个项目和一套支持工具组成,它们都有细微的不同侧重点和优势,以适应不同的项目。
随着时间的推移,不同的项目有望变得更加一致和可互操作。例如,Hyperledger Burrow 和 Hyperledger Sawtooth 已经与 Seth transaction family 交叉融合,后者允许 Sawtooth 运行以太坊智能合约。预计 Cello 和 Composer 等工具将及时扩展以支持额外的 Hyperledger 项目,从而形成一个日益强大的生态系统。
接下来,我们将深入讨论以太坊。以太坊是一个区块链公共网络,是第一个也是最受欢迎的支持完全可编程智能合约的公共网络。