了解Hyperledger结构中的各种证书

时间:2017-09-28 09:10:55

标签: hyperledger-fabric hyperledger ca hyperledger-composer

您好我正在尝试使用hyperledger结构进行块链实现。我做了第一次网络演示,发现了很多证书。我已经尝试在下面的图片中按层次排列它们。 enter image description here

我有一些与他们有关的问题

  1. 为什么需要所有这些不同类别的证书。像不同的msp tls一样,它们生成一次并在不同位置复制?
  2. 如何在不同的场景中使用这些不同的证书(如注册和沟通。)
  3. 如果我们不使用cryptogen,那么某些第三方可以生成所有这些证书。
  4. fabric-ca或任何其他第三方CA如何在这里提供帮助。
  5. TIA。

4 个答案:

答案 0 :(得分:3)

首先要感谢为同一个树创建树。

我是hyperledger的初学者,但我从超级链接文档中了解到,每个组织都需要一个唯一的根证书(ca-cert),它将特定组件(同行和订购者)绑定到该组织。 Fabric中的事务和通信由实体的私钥(密钥库)签名,然后通过公钥(signcerts)进行验证。

由于不同的组织也需要沟通或共享其分类帐,因此在组织级别上需要CA或MSP。在每个组织中,我们可以拥有多个同行,因此我们也需要为这些同行提供认证即使来自不同组织的同行也可以互相加入,以便进行身份验证(用于身份验证)和TLScerts(用于安全握手)。

要了解这些是如何生成的,我建议您手动生成工件

http://hyperledger-fabric.readthedocs.io/en/latest/build_network.html

并在创建文件夹时查看文件夹中的不同证书。

答案 1 :(得分:1)

当您使用cryptogen生成组织的证书时,您将看到

├── ca
├── msp
├── peers
├── tlsca
└── users

让我一一解释 CA :包含CA证书和私钥 tlsca 包含CA证书和私钥(TLS版本) MSP :这是组织MSP,我们需要使用它来生成创始块

Organizations:
    - &nbd
        Name: nbd
        ID: nbdMSP
        MSPDir: crypto-config/peerOrganizations/nbd/msp
        AnchorPeers:
            - Host: nbd-peer1-nbd
              Port: 7051

对等:对等包含两个目录

├── msp
└── tls

正在检查对等方的MSP ...

├── admincerts
├── cacerts
├── keystore
├── signcerts
└── tlscacerts

admincerts :这是对等MSP,与组织MSP不同,每个对等MSP都可以拥有管理证书,用于允许管理特权用户发出管理级别的事务 证书:受信任的根CA证书 密钥库:对等方的私钥 签名证书:对等证书的签名证书 tlscacerts :受信任的根CA证书(TLS版本)

----也与订购者相同----

用户

├── Admin@nbd
└── User1@nbd

----也与用户相同----

答案 2 :(得分:0)

在设置区块链网络期间,我们需要各种证书,我们可以关注CA(认证机构),例如MSP configuration of Blockchain network我个人使用CA作为我的IBM Hyperledger应用程序

答案 3 :(得分:0)

万一你还有疑问,你的帖子有点陈旧,你可能已经回答了你的问题。

  1. 为什么需要所有这些不同类别的证书。像不同的msp tls一样,它们生成一次并在不同位置复制?
  2. 我认为为什么需要所有这些证书的部分,@ kots得到了相当多的报道。对于问题的第二部分,复制了如此多密码对象的原因是,在生产环境中,您应该将每个容器分开。因此,您安装它们的文件夹应包含通信和授权所需的所有对象。不应该有一个只包含文件副本的中央文件夹。

    1. 如何在不同的场景中使用这些不同的证书(如注册和沟通。)
    2. R /他们通过八卦协议传递一系列安全机制,如频道,MSP等,他们需要对每个请求进行身份验证。有关@kots复制链接的更多详细信息。

      1. 如果我们不使用cryptogen,那么某些第三方可以生成所有这些证书。
      2. R /你可以使用cryptogen(没有Fabric-ca),Fabric-CA(有你自己的外部根证书,一个是由cryptogen生成的,或者是一个由fabric-ca生成的),或者你可以带你自己的CA但它是有点困难,你需要将它与你的ChainCode授权策略相匹配。

        1. fabric-ca或任何其他第三方CA如何在这里提供帮助。
        2. R /使用Fabric-CA为您提供了几乎适合生产的环境。它们处理大多数加密生成任务,以及处理CRL和注册。如响应#3中所述,根据您的要求,您可能会有很多混音。

          最好的问候。