Hyperledger是目前联盟链领域应用最广泛的开发框架和最大的开源合作组织。 是由Linux基金会主办的开源协作项目,包括金融、银行、物联网、供应链、制造和技术领域的领导者。
官方资料表明,其目的是推广行业间的区块链技术。 目前包括6个成型的开源项目和10个孵化中的开源项目。
Hyperledger Aries、Hyperledger Besu、Hyperledger结构、Hyperledger Indy、Hyperledger Iroha、Hyperledger Sawtoothh、Hyperledger hyperledger Cactus、hyperledger Caliper、Hyperledger Cello、Hyperledger浏览器、Hyperledger Firefly、Hyperledger
本文综合了所有的项目信息。 为读者了解Hyperledger的整个联盟链解决方案。
超文本阵列
Hyperledger Aries提供了一个可共享、重用和互操作的工具包,并定义了为创建、传输和存储可验证的数字证书的解决方案而设计的消息传递协议。 一种基于区块链的点对点交互式基础设施。 本项目使用Hyperledger Ursa提供安全的加密管理和分布式密钥管理功能。
主要特点
用于创建、签名和读取区块链事务处理的区块链接端口层:
包含加密存储元素,可用于安全地存储加密的敏感信息、可认证的证书以及用于构建(发布、认证)可认证证书的客户机的其他信息。
一种加密的点对点消息传递系统,称为DIDComm。 它基于身份证明(did ),使用多个传输协议支持这些客户机之间的非帐户交互。
支持多种形式的可验证证书交换(颁发和证明),包括使用Ursa的ZKP基元实现支持ZKP的可验证证书。
为了支持可互操作的Aries代理的独立实施和部署,包含了一组高级协议以及这些协议的子集化Aries互操作性配置文件。
包含一组面向生产的Aries框架和多个概念证明的实施支持各种用例和部署。 这些框架依赖于Aries代理的用例特定实现,包括移动钱包、企业认证证书颁发者和认证者。
包含用于代理和代理框架连续互操作性测试的代理测试工具。
超文本基准
Hyperledger Besu是在Apache2.0许可下开发的,是用Java编写的开源以太网客户端。 可以在以太网的公共网络或专用许可网络上运行,也可以在测试网络(如Rinkeby、Ropsten和Grli )上运行。 Hyperledger Besu包括多种共识算法,包括PoW、PoA和IBFT,并有一个全面的许可方案,专门用于联盟环境。
Hyperledger Besu实现了企业以太网协会(EEA )标准。 制定ea规范是为了在以太网中的各种开放源和封闭源项目之间创建公共接口,以防止用户被供应商锁定,并为构建APP应用程序的团队创建标准接口Besu实现符合EEA客户端规范的企业功能。
Hyperledger Besu的功能如下:
以太网虚拟机(EVM ) EVM是一个图灵完备的虚拟机,可以通过以太网区块链中的事务来部署和执行智能合约。
共识算法: Hyperledger Besu实现了各种共识算法。 这些算法包括交易验证、区块验证、区块生产,也就是工作量证明方面的挖掘。 这些包括权威证书、BFT2.0、Clique和工作量证书(Ethash )。
存储Hyperledger Besu使用RocksDB数据库键值数据库在本地存储链数据。 这些数据分为区块链、世界状态。
P2P网络: Hyperledger Besu实现以太网的devp2p网络协议,用于客户端间通信和IBFT2的附加子协议。
面向用户的API :超级用户基站通过HTTP、web套接字协议和GraphQLAPI提供主网络以太网和EEAJSON-RPCAPI。
监视:使用Hyperledger Besu可以监视节点和网络的性能。 使用Prometheus或debug_metricsJSON-RPCAPI方法监视节点的性能。 网络性能由Alethio工具(如块浏览器和以太网网络监视器)进行监视。
隐私: Hyperledger Besu中的隐私是指利益相关者之间保持交易隐私的能力。 其他缔约方无权访问交易内容、发件人或参与者列表。 Besu使用私有事务管理器实现隐私。
许可:许可网络通过在网络上启用节点许可和/或帐户许可,只允许指定的节点和帐户参加。
超级结构
它是开发模块化体系结构APP或解决方案的基础。 hyperledger结构允许组件(如共识和会员服务)即插即用。 其模块化和多功能设计可以适应广泛的行业用例。 提供独特的共识方法,在保护隐私的同时实现大规模性能。
主要特点
是高性能、安全、许可的区块链网络。 用Go写代码后,可以用Go、Javascript或Java写智能合约。 有Node.js、Java、Go、REST和Python的SDK版本。
超文本印度
提供工具、库和可重复使用的组件,以提供基于区块链和其他分布式账本的数字身份,并允许管理域、APP应用程序和其他孤岛之间的相互操作。 Indy可以与其他区块链互通,也可以单独使用,为身份去中心化提供了动力。
Hyperledger Iroha
Iroha是一个分布式账本项目,其目的是提供开发环境,让c和移动APP开发者可以为Hyperledger做出贡献。 该项目旨在补充结构、Sawtooth和其他潜在项目,它是一个具有预定义的命令、权限和查询集的框架,并且是一个不同的客户端库也可以用于物联网项目。
主要特点
在许可网络、c上创建,拥有Java、Python、JS、Swift客户端库,BFT共识算法yetanotherconsensus(YAC ); 即类型指令和查询集、多个签名交易。
超级计算机卫星h
由于提供了将核心系统和APP域分开的灵活模块化体系结构,智能合约可以为APP应用指定业务规则,而无需了解核心系统的基本设计。 Hyperledger Sawtoothh支持各种共识算法,如实用的拜占庭容错(PBFT )和经过时间证明) PoET。
Sawtooth最初由英特尔提供,是专为多功能性和可扩展性而设计的区块链套件。 用例从物联网到金融。 Sawtooth支持无许可证和无许可证的部署。 其中包括一种新的共识算法——经过时间证明(PoET )。 PoET的目标是大型分布式验证器组,以最少的资源消耗为目标。
主要特点
支持通过Hyperledger Burrow集成的以太坊协议,该协议可以实现可插入式共识算法(通过交易即时更改共识)、经过时间证明(PoET )、几乎所有语言的智能合约
超文本标记语言
是企业以太坊联盟发布的可靠计算规范的独立实现。 旨在将区块链迁移到安全的专用计算资源上。 帮助开发者获得计算的信任。
超文本标记
是一个完整的单二进制区块链分发,支持基于EVM和WASM的智能合约,并通过Tendermint算法实现BFT共识。 有一个复杂的事件系统来维护数据在链上的关系数据库映射治理和许可是内置的,可以通过在链条上建议交易来修改。 针对公共许可的所有权证明用例进行了优化,也可以在专用/联盟网络上使用。
超文本缓存器
Cactus是一种可插入的企业框架,无需引入另一个竞争的区块链,即可在多个分布式账本上进行交易。 Cactus的设计目的是在区块链网络和区块链网络之间提供中心化、自适应、安全的集成。 它旨在涵盖尽可能多的协议,并尽可能通过可扩展的插件架构,通过创建新插件来添加新协议或功能。
超级收集器
Caliper是区块链的基准框架,用户可以使用一组预定义的用例来衡量特定区块链实现的性能。 Caliper将生成一个报告,其中包含许多性能指标,如每秒事务数(TPS )、事务延迟和资源利用率。 目的是为了将Caliper的结果作为支持区块链实现的合适选择的参考。 用户特定的用例。 考虑到区块链配置、网络设置和特定用例的多样性,我不打算将其用于权威的性能评估或简单的比较目的。
超文本蜂窝
旨在用作区块链操作控制板,从而减少创建、管理和使用区块链所需的工作量。 它还可以用于促进作为服务的区块链的创建。 Cello提供了一个操作控制台,用于有效管理区块链,并在各种基础架构(包括裸机、虚拟机和各种容器平台)上运行。
Cello有助于区块链使用者/APP开发者降低运营和管理成本。 目标是区块链和分布式账本的操作系统。
主要特点
高效、自动地部署、管理和操作区块链。
支持结构等区块链平台。
支持裸机、虚拟机平台、容器云等多种基础架构。 例如,Swarm、Kubernetes等。
支持系统状态和分类帐行为的高级操作分析。
超级浏览器
显示、调用、部署或查询了块、事务和相关数据、网络信息(名称、状态、节点列表)、链接代码和事务集以及分类帐中存储的其他相关信息
超级英雄
用于企业数据流的多个系统,由区块链支持。 解决低层区块链、高级业务流程和用户界面之间的所有复杂层。 通过FireFly,开发者可以专注于业务逻辑而不是基础设施,从而更快地从根本上构建面向企业的区块链APP。
超级网格
旨在提供以供应链为中心的数据类型、数据模型和智能合约的业务逻辑参考实施,所有这些都基于现有的开放标准和行业最佳实践。 演示了如何将Hyperledger堆栈中的组件组合到有效的业务解决方案中,这是现实而实用的。
超级交易
目的是通过提供标准接口,执行与分布式账本分离的智能合约,减少制作分布式账本软件的开发工作。 Hyperledger Transactt采用了一种可扩展的方法,实现了新的智能合约语言,称为“智能合约引擎”。 该语言实现了处理智能合约的虚拟机或解释器。
超级用户协会
共享加密库有望避免其他加密工作的重复,提高进程的安全性。 该库是为Hyperledger和Hyperledger以外的项目选择和参与的存储库,可以部署和使用加密。 Hyperledger Ursa由一个子项目组成,它是密码代码或密码代码接口的聚合实现。
随着Hyperledger的成熟,Hyperledger的每个项目都开始发现需要复杂的加密实现。 Hyperledger Ursa认为,与其为每个项目实施自己的加密协议,不如在共享库中进行协作。 原因有很多:
避免重复:正如您所知,加密的实施并不准确,通常需要大量的工作才能在高安全级别上完成。 该库允许加密实施项目共享,从而避免不必要的重复和额外的工作。
安全性:将加密代码的大部分或全部放在一个地方,大大简化了Hyperledger加密部分的安全性分析。 另外,没有重复意味着维护变得容易了。
专家评审: Hyperledger Ursa认为,将加密专家集中在Hyperledger有助于将未来的风险降至最低。
跨平台互操作性:在两个项目中使用相同的加密库可以简化跨平台互操作性,因为加密认证涉及两者的相同协议。
模块化:成功的加密库鼓励和推动更多的模块化活动。
新项目:如果能够轻松访问正确的模块化加密实现,新项目就可以更容易地启动。
写在最后
为什么Hyperledger有这么多开发框架和产品,主要是因为Hyperledger在进行开发者-黑客森活动,独立组织协调框架开发。
该工作组被称为Hyperledger架构工作组(AWG ),是一个聚焦于开发企业级分布式账本架构框架以实现模块化架构融合的技术工作组其中包括标识通用组件和主要组件,将企业区块链堆栈功能分解为组件级别和模块,组件之间的接口规格以及分类帐之间的互操作性。
AWG也是Hyperledger社区架构师和技术人员交流想法、探索替代体系结构的选择、权衡、捕捉选择背后的推论的交叉项目论坛。 AWG将为Hyperledger孵化组下的项目提供建议和结构指导,鼓励其融入模块化结构。 它还邀请单个Hyperledger项目审查其体系结构和设计,以受益于社区的专业知识,并形成Hyperledger整体体系结构的方向。