Hyperledger fabric 在将Hyperledger composer部署到多个组织的结构中时,我需要粘贴org1和org2的CA证书
打开byfn-network.json并用ORG1对等节点的CA证书替换文本INSERT_ORG1_CA_CERT的所有实例:-使用以下命令从.pem文件获取证书,以便可以将其嵌入上述连接配置文件 抄袭Hyperledger fabric 在将Hyperledger composer部署到多个组织的结构中时,我需要粘贴org1和org2的CA证书,hyperledger-fabric,hyperledger,blockchain,hyperledger-composer,Hyperledger Fabric,Hyperledger,Blockchain,Hyperledger Composer,打开byfn-network.json并用ORG1对等节点的CA证书替换文本INSERT_ORG1_CA_CERT的所有实例:-使用以下命令从.pem文件获取证书,以便可以将其嵌入上述连接配置文件 抄袭 但是我完全搞不清楚我需要复制哪些内容以及粘贴到哪里基本上,一个组织需要一个连接配置文件。此连接配置文件包含网络中连接的所有对等方的详细信息,如下所示: { "name": "byfn-network", "x-type": "hlfv1", "version": "1.0.0", "channe
但是我完全搞不清楚我需要复制哪些内容以及粘贴到哪里基本上,一个组织需要一个连接配置文件。此连接配置文件包含网络中连接的所有对等方的详细信息,如下所示:
{
"name": "byfn-network",
"x-type": "hlfv1",
"version": "1.0.0",
"channels": {
"mychannel": {
"orderers": [
"orderer.example.com"
],
"peers": {
"peer0.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer1.org1.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer0.org2.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
},
"peer1.org2.example.com": {
"endorsingPeer": true,
"chaincodeQuery": true,
"eventSource": true
}
}
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com",
"peer1.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
},
"Org2": {
"mspid": "Org2MSP",
"peers": [
"peer0.org2.example.com",
"peer1.org2.example.com"
],
"certificateAuthorities": [
"ca.org2.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpcs://localhost:7050",
"grpcOptions": {
"ssl-target-name-override": "orderer.example.com"
},
"tlsCACerts": {
"pem": "INSERT_ORDERER_CA_CERT"
}
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpcs://localhost:7051",
"grpcOptions": {
"ssl-target-name-override": "peer0.org1.example.com"
},
"tlsCACerts": {
"pem": "INSERT_ORG1_CA_CERT"
}
},
"peer1.org1.example.com": {
"url": "grpcs://localhost:8051",
"grpcOptions": {
"ssl-target-name-override": "peer1.org1.example.com"
},
"tlsCACerts": {
"pem": "INSERT_ORG1_CA_CERT"
}
},
"peer0.org2.example.com": {
"url": "grpcs://localhost:9051",
"grpcOptions": {
"ssl-target-name-override": "peer0.org2.example.com"
},
"tlsCACerts": {
"pem": "INSERT_ORG2_CA_CERT"
}
},
"peer1.org2.example.com": {
"url": "grpcs://localhost:10051",
"grpcOptions": {
"ssl-target-name-override": "peer1.org2.example.com"
},
"tlsCACerts": {
"pem": "INSERT_ORG2_CA_CERT"
}
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://localhost:7054",
"caName": "ca-org1",
"httpOptions": {
"verify": false
}
},
"ca.org2.example.com": {
"url": "https://localhost:8054",
"caName": "ca-org2",
"httpOptions": {
"verify": false
}
}
}
}
如您所见,此文件具有网络中每个对等方的连接端点。如果要在网络中启用TLS,还需要在此处提供TLS-CA证书。此证书进入json的“tlsCACerts”部分
考虑到您的问题,byfn-network.json应该是您的连接配置文件。当您运行以下命令时:
awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt > /tmp/composer/org1/ca-org1.txt
它将复制peer0.org1的tls ca证书,并将其粘贴到位于/tmp/composer/org1/ca-org1.txt的文本文件中
您需要复制此文本文件的内容并将其粘贴到byfn-network.json文件的“tlsCACerts”部分
对于同样的问题,有一个相当全面的教程。你可以找到参考资料
awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tls/ca.crt > /tmp/composer/org1/ca-org1.txt