Hyperledger Fabric组织MSP中MSP的自定义详细信息(国家、州、地区)



Hyperledger Fabric Documentation指出,我们可以为组织添加额外的参数,即Specs和CA。示例显示,可以注释掉其他代码以提供值。

我想做的事:

  • 我需要在组织的X509证书中提供Country、State、Locality的自定义值
  • 我正在使用"cryptogen"工具来生成证书
  • 以下是crypto-config.yaml文件中一个组织的代码片段:

    -&Org1
    Name: Org1MSP
    ID: Org1MSP
    MSPDir: crypto-config/peerOrganizations/org1.example.com/msp
    CA:
    Hostname: ca
    Country: Westros
    Province: North
    Locality: Winterfell
    OrganizationalUnit: HouseStark
    StreetAddress: NorthernStreet
    PostalCode: 30000
    Policies:
    Readers:
    Type: Signature
    Rule: "OR('Org1MSP.admin', 'Org1MSP.peer', 'Org1MSP.client')"
    Writers:
    Type: Signature
    Rule: "OR('Org1MSP.admin', 'Org1MSP.client')"
    Admins:
    Type: Signature
    Rule: "OR('Org1MSP.admin')"
    AnchorPeers:
    - Host: peer0.org1.example.com
    Port: 7051
    

生成证书时出现的错误:

2019-01-09 13:44:50.557 IST[common/tools/configtxgen/localconfig]加载->PANI 003将配置分解为结构时出错:3错误(s) 解码:

  • "组织[1]"具有无效密钥:CA
  • "Profiles[TwoOrgsChannel].Application.Organizations[0]"具有无效密钥:CA
  • "Profiles[TwoOrgsOrderGenesis].Consortiums[SampleConsortium].Organizations[0]"具有无效密钥:CA

我尝试过的:

  • 首先,我尝试了上面的配置,结果出现了错误
  • 我再次阅读了cryptogen工具的用法。我曾经使用cryptogen showtemplate来检查用于生成证书的模板。它的格式与我的crypto-config.yaml文件类似
  • 为了保持配置简单,即没有CA详细信息,我启动了网络,进入结构CA服务器容器,并更新了fabric-ca-server-config.yaml以提供CA的值。这导致了其他错误。我认为这是因为我使用cryptogen使用一些X CA配置生成了证书,并且在运行时我使用了一些Y CA配置

是我遗漏了什么还是做错了什么?

我重新安装了结构1.4的二进制文件,并在cryptoconfig.yaml中定义了以下内容:

# Setting up orderer of the network
OrdererOrgs:
- Name: Orderer
Domain: example.com
CA:
Country: IN
Province: Karnataka
Locality: Bengaluru
Specs:
- Hostname: orderer
# Setting up peer orgs of the network
PeerOrgs:
- Name: Org1
Domain: org1.example.com
EnableNodeOUs: true
CA:
Country: IN
Province: Karnataka
Locality: Bengaluru
# Template count is the number of peer nodes for this organization
Template:
Count: 2
Users:
Count: 1

我为CSR使用的SubjectDN提供了错误的值。

最新更新