crypto-config.yaml
2019-05-24 本文已影响0人
天地一小儒
背景介绍
此配置文件主要和cryptogen
工具搭配使用,它包含网络拓扑,并允许我们为组织和属于这个组织的成员生成一组证书和密钥。这些证书代表身份,它们允许在我们的实体进行通信和交易时进行签名/验证身份信息。
cryptogen(生成组织结构和身份文件)源码编译方法:
cd $GOPATH/src/github.com/hyperledger/fabric make cryptogen
编译完成后,二进制文件放在当前目录下的.build/bin目录下,你可以将它移动到你想要移动的地方,比如当前文件夹,命令:
mv -fv .build/bin/cryptogen cryptogen
, 或者将.build/bin目录加入到你的环境变量Path中,这样你就可以直接使用它了。
示例
接下来看crypto-config.yaml
的一个示例:
# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
#
# ---------------------------------------------------------------------------
# "OrdererOrgs" - Definition of organizations managing orderer nodes
# ---------------------------------------------------------------------------
OrdererOrgs:
# ---------------------------------------------------------------------------
# Orderer
# ---------------------------------------------------------------------------
- Name: Orderer
Domain: rabbit.com
# ---------------------------------------------------------------------------
# "Specs" - See PeerOrgs below for complete description
# ---------------------------------------------------------------------------
Specs:
- Hostname: orderer
# ---------------------------------------------------------------------------
# "PeerOrgs" - Definition of organizations managing peer nodes
# ---------------------------------------------------------------------------
PeerOrgs:
# ---------------------------------------------------------------------------
# SamplePeerOrg1
# ---------------------------------------------------------------------------
- Name: SamplePeerOrg1
Domain: org1.example.com
EnableNodeOUs: true
Template:
Count: 2
Users:
Count: 1
# ---------------------------------------------------------------------------
# SamplePeerOrg2
# ---------------------------------------------------------------------------
- Name: SamplePeerOrg2
Domain: org2.example.com
EnableNodeOUs: true
Template:
Count: 2
Users:
Count: 1
这里配置了一个Orderer节点组织OrdererOrgs
和两个Peer节点组织PeerOrgs
,每个Peer节点组织有两个节点成员Template
和一个用户成员Users
。
生成身份信息
命令:
cryptogen generate --config=./crypto-config.yaml --output ./crypto-config
运行cryptogen工具后,生成的证书和密钥将保存到标题为crypto-config的文件夹中。文件夹目录结果如图所示:

可以看到,crypto-config目录下有两个子目录,分别是ordererOrganizations和peerOrganizations,这两个目录下的子目录分别是各自配置文件里面的Domain参数名。其子目录都是类似的5个文件夹,分别是ca(组织的唯一根证书)、msp(成员身份提供者)、orderers/peers(各个成员的身份信息)、tlsca(tls唯一根证书)、users(用户的身份信息,包括管理员和一般用户)。
ca(组织的唯一根证书)
目录结构:
