Hyperledger温室用来帮助解决区块链落地,旗下包含多个孵化器,目前已衍生出12个子目录
Hyperledger Frameworks(框架)
Hyperledger Burrow
Type:Permissioned smart contract application engine
Hyperledger Burrow是由Linux基金会托管的Hyperledger项目之一。Hyperledger Burrow最初由Monax提供,由英特尔共同赞助。Hyperledger Burrow为模块化区块链客户端提供了一个部分根据以太坊虚拟机(EVM)规范开发的许可智能合约解释器(通常以Solidity编写)。
共识引擎:使用拜占庭容错(BFT)Tendermint协议对交易进行排序和确认,Tendermint协议提供了高并发,并有效的防止区块链分叉;
应用区块链接口(ABCI):智能合约应用接口通过ABCI与共识引擎连接,ABCI保证了智能合约应用程序的保密性;
智能合约应用:交易被验证并按照共识引擎最终确定的顺序应用于应用程序状态。应用程序状态包括所有帐户,验证程序集和名称注册表。Burrow中的帐户具有权限,并且包含智能合约代码或对应的公 - 私钥对。调用给定帐户中的智能合约代码的事务将激活在允许的虚拟机中执行该帐户的代码。
以太坊虚拟机许可:This virtual machine is built to observe the Ethereum operation code specification and additionally asserts the correct permissions have been granted. Permissioning is enforced through secure native functions and underlies all smart contract code. An arbitrary but finite amount of gas is handed out for every execution to ensure a finite execution duration - “You don’t need money to play, when you have permission to play”.
应用程序二进制接口(ABI):需要以二进制格式制定事务,可以由区块链节点处理。当前工具提供编译,部署和链接可靠智能合约的功能,并制定交易以调用链上的智能合约。
API Gateway: Burrow exposes REST and JSON-RPC endpoints to interact with the blockchain network and the application state through broadcasting transactions, or querying the current state of the application. Websockets allow subscribing to events, which is particularly valuable as the consensus engine and smart contract application can give unambiguously finalised results to transactions within one blocktime of about one second.
Hyperledger Fabric
Hyperledger Fabric是一个区块链框架实现,是Linux基金会托管的Hyperledger项目之一。作为开发具有模块化架构的应用程序或解决方案的基础,Hyperledger Fabric允许组件(例如共识和成员服务)即插即用。Hyperledger Fabric利用容器技术来托管称为“链代码”的智能合约,其中包含系统的应用程序逻辑。由于第一次黑客马拉松,Hyperledger Fabric最初由Digital Asset和IBM提供。
智能合约:Golang
SDK:Node,Java,Python(test),Go(test),REST(test)
Hyperledger Grid
Hyperledger Grid最初打算提供以供应链为中心的数据类型,数据模型和基于智能合约的业务逻辑的参考实现 - 所有这些都基于现有的开放标准和行业最佳实践。其次,它将以真实和实用的方式展示如何将Hyperledger堆栈中的组件组合成一个有效的业务解决方案。
Hyperledger Indy
Type:分布式分类帐本和使用工具库
Hyperledger Indy是一种分布式分类账,专为分散身份而设计。它提供工具,库和可重用组件,用于创建和使用以区块链或其他分布式分类账为基础的独立数字身份,以便它们可跨管理域,应用程序和任何其他“孤岛”进行互操作。由于分布式分类账在事后无法更改,因此基于分类帐的身份的用例必须仔细考虑基本组件,包括性能,规模,信任模型和隐私。特别是,隐私设计和隐私保护技术对于公共身份分类账至关重要,其中相关性可以在全球范围内进行。出于所有这些原因,Hyperledger Indy开发了分散身份的规范,术语和设计模式,以及这些概念的实现,这些概念可以在Hyperledger Consortium内部和外部使用和消费。
Indy拥有独立的基于RBFT的分布式账本
Hyperledger Iroha
Type:DLT(分布式账本技术),智能合约引擎,使用工具库
支持语言:Python,Java,JavaScript,C++
支持平台:Android,IOS
提供一套独特的拜占庭容错共识算法,Iroha对等体也是验证节点,它可以通过Gossip协议分配半签名事务,作为多签名事务的一部分。结合功能强大的基于角色的权限模型,最终用户应用程序是无穷无尽的。这些块存储在文件中,而分类帐状态存储在PostgreSQL数据库中。
SQL数据库的使用支持针对分类帐和简单报告实施复杂分析。要使用Iroha,客户端使用其中一个受支持的客户端库来创建protobuf / gRPC消息,然后由Iroha平台处理。Hyperledger Iroha用C ++编写,提供了一小组快速命令和查询,涵盖了数字资产管理和数字身份管理的大多数常见操作。
Hyperledger Sawtooth
类型:DLT,智能合约引擎
状态:活动
Hyperledger Sawtooth是一个用于构建,部署和运行分布式账本的模块化平台。分布式分类帐提供在没有中央权限或实施的情况下维护的数字记录(例如资产所有权)。
Hyperledger Tools(工具)
Hyperledger Caliper
Hyperledger Caliper是一个区块链基准测试工具,它允许用户使用一组预定义的用例来衡量区块链性能。同时,Caliper会生成性能指标,包括:TPS,事务延迟,资源利用率等。
目的:帮助用户选择区块链架构。
Hyperledger Cello
Cello主要用于在区块链生态系统中提供按需服务,以减少创建、管理和摧毁区块链所需的工作量。它在多种基础设施上提供多租户链服务。
Hyperledger Composer
Hyperledger Composer是一套用于构建区块链业务网络的协作工具,使业务所有者和开发人员能够简单快速地创建智能合约和区块链应用程序来解决业务问题。
Composer使用JavaScript构建,利用包括node.js,npm,CLI和流行编辑器在内的现代工具,Composer提供以业务为中心的抽象以及具有易于测试的devops流程的示例应用程序,以创建强大的区块链解决方案,通过技术开发推动业务需求的一致性
Hyperledger Explorer
Hyperledger Explorer是一个区块链浏览器,也是Linux基金会托管的Hyperledger项目之一。Hyperledger Explorer旨在创建用户友好的Web应用程序,可以查看,调用,部署或查询块,事务和相关数据,网络信息(名称,状态,节点列表),链代码和事务系列,以及任何其他存储在分类帐中的相关信息。
Hyperledger Quilt
Hyperledger Quilt通过实施Interledger协议(也称为ILP)提供分类帐系统之间的互操作性,Interledger协议主要是支付协议,旨在跨分布式分类账和非分布式分类账传输价值。Interledger协议提供分类账(甚至非区块链或分布式分类账)与每个分类账中账户的单个账户名称空间之间的原子交换。通过在Hyperledger中添加Quilt,Linux Foundation现在可以托管Java(Quilt)和JavaScript(Interledger.js)Interledger实现。
Hyperledger Ursa
Hyperledger Ursa是一个共享加密库,可以使人(和项目)避免重复其他加密工作,并希望提高过程的安全性。该库将成为用于放置和使用加密的项目(以及可能的其他)的选择性存储库。Hyperledger Ursa由子项目组成,子项目是加密代码的一致实现或加密代码的接口。目前有两个子项目:
1、“Base Crypto” : 第一个子项目将是“基础加密”库,其主要特征是我们的共享模块化签名库。这可以使用通用API实现几种不同的签名方案,这使得区块链构建器几乎可以即时更改签名方案(或者可以轻松地使用和支持多种签名方案)。
2、Z-Mix : Z-mix将提供一种通用的方法来创建零知识证明,证明有关多个加密构建块的陈述,包括签名,承诺和可验证的加密。该子项目的目标是提供单一灵活且安全的实现来构建此类零知识证明。Z-mix由C可调用代码组成,但也有各种编程语言的便利包装器。