crypto-config #
用cryptogen生成证书后
peerOrganizations #
本文以peerOrganizations组织树为例,打开该目录,可以看到如下两个组织的证书目录:
org1.example.com #
每个组织中又有如下目录:
每个组织都会生成单独的根证书。
ca #
ca :存放了组织的根证书和对应的私钥文件,采用的是EC算法,证书为自签名(自已签发自己的公钥)。组织内的实体将基于该证书作为证书根。
map #
msp:存放代表该组织的身份信息。
(1)admincerts:被根证书签名的组织管理员的身份验证证书。
(2)cacerts:组织的根证书,和ca目录下的文件相同。
(3)tlscacerts:用于TLS的ca证书,证书为自签名。
peer #
peers:存放该组织下所有peer节点的证书:
peer0.org1.example.com #
每个peer节点的证书结构都是相同的,我们以peer0为例:
msp: #
admincerts:组织管理员的身份验证证书,用于验证交易签名者是否为管理员身份。
cacerts:存放组织的根证书。
keystore:本节点的身份私钥,用来签名。
signcerts: 验证本节点签名的证书,被组织根证书签名。
tlscacerts:TLS连接用的身份证书,即组织TLS证书。
tls: #
存放tls相关的证书和私钥。
ca.crt:组织的根证书。
server.crt:验证本节点签名的证书,被组织根证书签名。
server.key:本节点的身份私钥,用来签名。
users #
users:存放属于该组织的用户实体。
Admin@org1.example.com #
Admin:管理员用户的信息,包括其msp证书和tls证书。
msp: #
admincerts:管理员身份证书。
cacerts:存放组织的根证书。
keystore:本用户的身份私钥,用来签名。
signcerts: 管理员用户的身份验证证书,由组织根证书签名,要放到Peer的msp/admincerts下才会被这个Peer认可。
tlscacerts:TLS连接用的身份证书,即组织TLS证书。
tls: #
存放TLS相关的证书和私钥。
ca.crt:组织的根证书。
server.crt: 管理员用户的身份验证证书,由组织根证书签名。
server.key:管理员的身份私钥,用来签名。
User1: #
第一个用户的信息,结构和admin相同,包括msp证书和tls证书。
这些身份文件随后可以分发到对应的Orderer节点和Peer节点上,并放到对应的MSP路径下,用于在交易时进行签名及验证。