通过加密创建的用户与通过结构 CA 服务器注册的用户之间的差异



在进行Hyperledger结构设置时,我们创建加密材料并提及组织的用户,并相应地生成用户加密材料,用于在通过CLI登录时调用链码。此外,当我们尝试通过SDK连接网络时,我们还需要注册并注册用户以连接到网络。那么,这两个用户之间有什么区别呢?

用于生成Hyperledger Fabric密钥材料的Cryptogen实用程序主要用于测试环境。

它会在结构 CA 服务器启动之前生成 CA 证书。{在生产环境中不会是这种情况。

此证书挂载到docker-compose.yaml 文件中的 fabric-ca。这是通过关键字完成的,如下面的代码片段所示:

ca.example.com: image: hyperledger/fabric-ca environment: - FABRIC_CA_HOME=/etc/hyperledger/fabric-ca-server - FABRIC_CA_SERVER_CA_NAME=ca.example.com - FABRIC_CA_SERVER_CA_CERTFILE=/etc/hyperledger/fabric-ca-server-config/ca.org1.example.com-cert.pem - FABRIC_CA_SERVER_CA_KEYFILE=/etc/hyperledger/fabric-ca-server-config/4239aa0dcd76daeeb8ba0cda701851d14504d31aad1b2ddddbac6a57365e497c_sk ports: - "7054:7054" command: sh -c 'fabric-ca-server start -b admin:adminpw -d' volumes: - ./crypto-config/peerOrganizations/org1.example.com/ca/:/etc/hyperledger/fabric-ca-server-config container_name: ca.example.com networks: - basic

上述脚本中的命令 'fabric-ca-server start -b admin:adminpw -d' 注册了一个引导标识。应用程序使用此引导标识来注册"管理员"用户。在此注册期间,fabric-ca-server 为应用提供 ecert、用户私钥和 cacert 链 PEM 文件。

根据上面的参考,由cryptogen和通过应用程序生成的用户证书将使用相同的根CA证书颁发。

当使用 CLI 执行安装链码、实例化链码等命令时,您将使用由 cryptogen 生成的用户证书,因为这些证书被挂载到相应的对等体中。再次参考docker-compose.yaml中peer的部分:

volumes:
- /var/run/:/host/var/run/
- ./crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/msp:/etc/hyperledger/msp/peer
- ./crypto-config/peerOrganizations/org1.example.com/users:/etc/hyperledger/msp/users
- ./config:/etc/hyperledger/configtx

最新更新