【问题标题】:Hyperledger fabric Crypto materialsHyperledger 织物加密材料
【发布时间】:2017-11-07 12:20:58
【问题描述】:

如果我们在 fabric-samplebasic-network 中看到 crypto-config 文件夹,我们有各种类型的各种证书材料:

└── example.com
├── ca
│   ├── 0d46ccf0e9436c1bc3b6e2bf80cdb202c4943604f95c72ee0ff839d3ec300719_sk
│   └── ca.example.com-cert.pem
├── msp
│   ├── admincerts
│   │   └── Admin@example.com-cert.pem
│   ├── cacerts
│   │   └── ca.example.com-cert.pem
│   └── tlscacerts
│       └── tlsca.example.com-cert.pem
├── orderers
│   └── orderer.example.com
│       ├── msp
│       │   ├── admincerts
│       │   │   └── Admin@example.com-cert.pem
│       │   ├── cacerts
│       │   │   └── ca.example.com-cert.pem
│       │   ├── keystore
│       │   │   └── 2fb065725bf1b7e2811c0e8ca8d37f5a951fc4cd1162a47aad8accf9ddd10291_sk
│       │   ├── signcerts
│       │   │   └── orderer.example.com-cert.pem
│       │   └── tlscacerts
│       │       └── tlsca.example.com-cert.pem
│       └── tls
│           ├── ca.crt
│           ├── server.crt
│           └── server.key
├── tlsca
│   ├── 6a211ed18880b4db3867831c977809902713b8e321a5ab55ecc104dafc2eec49_sk
│   └── tlsca.example.com-cert.pem
└── users
    └── Admin@example.com
        ├── msp
        │   ├── admincerts
        │   │   └── Admin@example.com-cert.pem
        │   ├── cacerts
        │   │   └── ca.example.com-cert.pem
        │   ├── keystore
        │   │   └── db670eed8487a93c35ae448b9f84c2f241a7a8c87df0544fc1dc08baf7832aa0_sk
        │   ├── signcerts
        │   │   └── Admin@example.com-cert.pem
        │   └── tlscacerts
        │       └── tlsca.example.com-cert.pem
        └── tls
            ├── ca.crt
            ├── server.crt
            └── server.key

谁能解释为什么这些文件太多,为什么其中一些文件重复(例如 ca.example.com-cert.pem 有很多副本)以及目的。 .pem 文件有什么用途?
.crt 文件有什么用途?
.key 文件有什么用途?
** ...._sk** 文件用于什么?

以及为什么 fabcar 示例只使用 3 个文件来管理它。??

fabcar/creds
├── 5890f0061619c06fb29dea8cb304edecc020fe63f41a6db109f1e227cc1cb2a8-priv
├── 5890f0061619c06fb29dea8cb304edecc020fe63f41a6db109f1e227cc1cb2a8-pub
└── PeerAdmin

感谢您的帮助

【问题讨论】:

标签: hyperledger-fabric hyperledger


【解决方案1】:

每个组织都需要一个唯一的根证书 (ca-cert),它将特定组件(peers 和 orderers)绑定到该组织。

Fabric 中的交易和通信由实体的私钥 (keystore) 签名,然后通过公钥 (signcerts) 进行验证。

由于不同的组织也需要交流或共享他们的分类帐,因此需要在组织级别上使用 CA 或 MSP。在每个组织中,我们可以有多个对等点,因此我们也需要对这些对等点进行认证。甚至来自不同组织的对等点也可以相互加入,因此 signcerts(用于身份验证)和 TLScerts(用于安全握手)。

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

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

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

这些是 fabcar 用来生成上述证书的密钥。

【讨论】:

  • 感谢您的回答。我已经阅读了文档,但仍然感到困惑。我们如何从 cryptogen 生成的整个证书层次结构中掌握 3 个文件,例如 fabcar 正在使用的文件。以及我们需要在我们的 NodeJS SDK 中使用哪些文件来从 cryptogen 生成的证书中对对等方进行身份验证和验证。
  • 每个想要与账本交互的参与者(例如根证书、对等节点、排序节点等)都必须通过其证书。这些证书默认存储在 crypto-config 文件夹中。使用以下链接来了解如何创建证书并在配置中使用它们。 hyperledger-fabric.readthedocs.io/en/release/build_network.html
  • 您能否制作一个 crypto-config 中所有文件夹的树形图,并针对每个文件夹添加关于其用途的描述?如果我们能有这样的东西会非常有帮助,因为它非常令人困惑。我现在面临 3 天的问题,因为我没有使用正确的证书,并且我已经尝试了证书的所有 P&C。如果您可以将其记录在中篇文章或任何其他地方,它将节省大量时间。 @kots
猜你喜欢
  • 2016-04-01
  • 1970-01-01
  • 2011-06-07
  • 1970-01-01
  • 1970-01-01
  • 2018-11-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多