Hyperledger Fabric CA的工作原理如何

时间:2018-07-03 12:44:37

标签: hyperledger-fabric hyperledger hyperledger-fabric-ca

我对fabric-ca的工作方式感到困惑。这是我第一次与CA合作。我已遵循fabric-ca官方文档,并提出以下问题。

这是我启动CA服务器然后注册并注册客户端身份的方法。

1-我通过泊坞窗(docker)启动Fabric ca服务器

fabric-ca:
  image: hyperledger/fabric-ca
  container_name: fabric-ca
  ports:
    - "7054:7054"
  environment:
    - FABRIC_CA_SERVER_HOME=/etc/hyperledger/fabric-ca-server
    - FABRIC_CA_CLIENT_HOME=/etc/hyperledger/fabric-ca-client
    - FABRIC_CA_LOGLEVEL=debug
    - FABRIC_CA_SERVER_CA_NAME=fabric-ca
  volumes:
    - "./fabric-ca-server:/etc/hyperledger/fabric-ca-server"
    - "./fabric-ca-client:/etc/hyperledger/fabric-ca-client"
  command: sh -c 'fabric-ca-server start -b rootadmin:rootadminpw'

2-现在docker容器成功启动,并且我的PWD中生成了以下文件/证书。

▶ tree .
.
├── fabric-ca-client
├── fabric-ca-dokcer-compose.yaml
└── fabric-ca-server
    ├── ca-cert.pem
    ├── fabric-ca-server-config.yaml
    ├── fabric-ca-server.db
    └── msp
        └── keystore
            └── 45eed6744814fc8f2055ead83036b9bb15e5b9c5c5fd2b36db2419a7e585b8c3_sk

4 directories, 5 files
  1. 我已经按照本教程有关OpenSSL(https://jamielinux.com/docs/openssl-certificate-authority/)的介绍,根据该教程,我们需要一个自签名的根证书。
    *我了解上面生成的证书是自签名的根证书。

4-现在,根据fabric-ca文档,我们需要注册一个引导程序身份

fabric-ca-client enroll -u http://rootadmin:rootadminpw@localhost:7054

此命令如下生成fabric-ca-client目录中的加密文件和配置文件

▶ tree .                                                                
.
├── fabric-ca-client-config.yaml
└── msp
    ├── cacerts
    │   └── localhost-7054.pem
    ├── intermediatecerts
    │   └── localhost-7054.pem
    ├── keystore
    │   └── b06fc324d2176a14db0fde95a951f846b57e533ea34bf94ab231345bdf3b13a5_sk
    └── signcerts
        └── cert.pem

5 directories, 5 files

那么这些加密货币与在服务器(尤其是.pem文件)上生成的加密货币之间有什么区别。

服务器和客户端加密文件之间还有什么关系?这些客户端密码是否由服务器签名?

如果我多次在fabric-ca-client命令上运行,则.pem文件保持不变,但是我在keystore文件夹中得到了多个文件,我知道这是私钥。

最后,注册和注册命令之间的区别到底是什么?

0 个答案:

没有答案