CA证书文件的生成及结构

generate


主要调用generate() 方法。

  • 首先调用 getConfig()读取本地配置或使用默认配置。
  • 使用 renderOrgSpec() 和 generatePeerOrg()方法依次生成每个 peer 类型的组织。
  • 使用 renderOrgSpec() 和 generateOrdererOrg()方法依次生成每个 orderer 类型的组织。
  • renderOrgSpec()负责将模板中具体组织数据解析出来。

peer 组织


generatePeerOrg()会具体生成每个 peer 类型的组织,结构如下。

peerOrganizations:

  • org1:存放第一个组织的相关材料,每个组织会生成单独的根证书。
    • ca:存放组织的根证书和对应的私钥文件,默认采用 EC 算法,证书为自签名。组织内的实体将基于该根证书作为相同的证书根。
    • msp:存放代表该组织的身份信息
      • admincerts:组织管理员的身份验证证书。
      • cacerts:组织的根证书。
      • keystore:组织的私钥文件,用来签名。
      • signcerts:组织的签名验证证书。
    • peers:存放该组织下的所有 peer 节点
      • peer1:第一个 peer 的信息,包括 msp 证书和 tls 证书两类
        • msp:
          • admincerts:组织管理员的身份验证证书。
          • cacerts:存放组织的根证书。
          • keystore:本节点的身份私钥,用来签名。
          • signcerts:验证本节点签名的证书,被组织根证书签名。
        • tls:存放 tls 相关的证书和私钥
          • ca.crt:组织的根证书。
          • server.crt:验证本节点签名的证书,被组织根证书签名。
          • server.key:本节点的身份私钥,用来签名。
    • users:存放属于该组织的用户的实体。
      • Admin:管理员用户的信息,包括 msp 证书和 tls 证书两类。
        • msp:
          • admincerts:组织根证书作为管理者身份验证证书。
          • cacerts:存放组织的根证书。
          • keystore:本用户的身份私钥,用来签名。
          • signcerts:管理员用户的身份验证证书,被组织根证书签名。
        • tls:存放 tls 相关的证书和私钥
          • ca.crt:组织的根证书。
          • server.crt:管理员的用户身份验证证书,被组织根证书签名。
          • server.key:管理员用户的身份私钥,用来签名。
      • User1:第一个用户的信息,包括 msp 证书和 tls 证书两类。
        • msp:
          • admincerts:组织根证书作为管理者身份验证证书。
          • cacerts:存放组织的根证书。
          • keystore:本用户的身份私钥,用来签名。
          • signcerts:验证本用户签名的身份证书,被组织根证书签名。
        • tls:存放 tls 相关的证书和私钥
          • ca.crt:组织的根证书。
          • server.crt:验证用户签名的身份证书,被组织根证书签名。
          • server.key:用户的身份私钥,用来签名。
  • org2

注意每个实体(组织、节点、用户)最终都会拥有 MSP 来代表身份信息,其中包括三种证书:管理员身份的验证证书、实体信任的 CA 的根证书、自身身份验证(检查签名)的证书。此外,还包括对应身份验证的签名用的私钥。

GenerateVerifyingMSP()会生成组织的 MSP 信息。

generateNodes 会针对每个实体生成所需要的 msp 和 tls 信息,证书都会被组织根证书签名,信任的根都是组织 CA 证书。

orderer 组织


跟 peer 组织类似过程。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值