Hyperledger 是像以太坊一样真正安全的区块链吗?

Is Hyperledger a truly secure blockchain like ethereum?

在 Hyperledger 中,我们有一个叫做网络管理员的东西,这个管理员可以访问区块链上的所有卡片和资产(至少我曾尝试使用 acl 拒绝管理员访问资产,但我不能' t部署更改,它每次都超时)。那么,是否可以将管理员与我们的业务网络隔离开来?或者像以太坊这样的所有区块链也有网络管理员?

Hyperledger 是一个 permissioned 区块链,拥有一个或多个所有者,您必须获得许可才能参与(通常通过受信任的机构颁发证书)。许可分类账的完整性由由 "trusted" 参与者组成的有限共识过程检查。

另一方面,以太坊是无需许可的,public,任何人都可以加入网络。共识过程(目前)基于工作证明,作为保持网络健康的激励措施,必须支付费用才能处理您的交易,用于防止垃圾邮件攻击,矿工也因其贡献而获得奖励与没有本地货币的 hyperledger 不同的是,在挖掘区块时。

只要您信任参与验证超级账本联盟内交易的各方,那么您可能会认为它是安全的,但它并不像以太坊那样真正无需信任。 Hyperledger 旨在解决企业的需求,而以太坊是一个全球通用的区块链。

我相信您在问题中指的是 Hyperledger Composer 而不是 Hyperledger FabricHyperledger Foundation 组件的任何部分,因此我认为在这里进行区分很重要。您也没有指定您尝试使用的 Hyperledger Composer 的版本,所以我这里的答案是特定于 Composer 0.19.x 的,这是撰写本文时的当前版本。

Hyperledger composer 是一个利用 hyperledger fabric 的 DLT 功能的框架。因此,任何业务网络都是通过超级账本结构的机制进行管理和控制的。因此,install/start/upgrade 业务网络需要适当的 Hyperledger Fabric 权限才能执行链代码 install/instantiate/upgrade。为了与业务网络交互,您需要一个由 hyperledger fabric 授权的身份。

在 Composer 中,没有网络管理员(即具有整体权限的单个参与者或一组参与者)这样的东西。任何参与者的所有访问都由业务网络定义的 acl 定义控制。更改业务网络(以及 acls)的能力由允许执行 hyperledger fabric 链码升级(或者如果是首次部署则启动)的身份控制。

Composer 提供了一个仅用于开发目的的非常简单的 hyperledger fabric 设置以及一个示例 ACL,该 ACL 授予预定义的参与者类型 NetworkAdmin(也许这个内置的默认名称令人困惑,因为它不是任何东西特殊)允许它完全访问所有内容。此外,在所有教程中,所有内容都以这种方式引用管理和设置,以便轻松进入开发业务网络应用程序,当然不是如何设置生产网络的指南或表示。

总而言之,hyperledger composer 受 hyperledger fabric 具有的任何访问功能的约束(请注意,正在为 hyperledger fabric 引入更多功能,例如零知识证明)。然后,Composer 添加了它自己的由 ACL 定义管理的访问控制概念,使用所有这些功能,您可以完全控制身份和参与者可以在 hyperledger fabric 分类帐中执行和查看的内容。

为避免混淆,Hyperledger 是 Linux 基金会下的一个伞式组织。它包含 5 种独立的区块链技术,全部开源,全部供企业使用:

  • Hyperledger Fabric--如上解释
  • Hyperledger 锯齿波——解释如下
  • Hyperledger Indy(身份管理重点)
  • Hyperledger Iroha(移动应用重点)
  • Hyperledger Burrow(以太坊 EVM 实现)

Hyperledger Sawtooth 是一个经过许可的区块链。锯齿节点有一个 public/private 密钥对用于与其他节点通信。所有交易都由提交交易的客户端签署,交易通过使用 ZMQ 消息队列的加密通信通道在所有节点中复制。

我会评估每项技术,看看哪一项最符合您的需求。