【发布时间】:2020-11-23 00:22:28
【问题描述】:
我们使用 openssl 生成 CSR(证书签名请求)如下。
- 第一步:生成ECPARAM.pem文件
openssl genpkey -genparam -algorithm ec -pkeyopt ec_paramgen_curve:P-384 -out ECPARAM.pem
- Step2:生成 privateKey 和 CSR:
openssl req -newkey ec:ECPARAM.pem -keyout PRIVATEKEY.key -out MYCSR.csr
一个新的peer证书由上面列出的 CSR 中的相应 CA 颁发并签名。
peer启动时,输出如下错误:
2020-11-22 22:28:14.635 UTC [main] InitCmd -> ERRO 001 无法运行对等体,因为从目录 /etc/hyperledger/fabric/msp 设置类型为 bccsp 的 MSP 时出错:在 SigningIdentityInfo 中找不到 KeyMaterial
我想问题与openssl生成的EC Key的格式有关? 下面是导致错误的私钥示例:
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIBEzBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w0BBQwwHAQIQtU4Ouojj6MCAggA
MAwGCCqGSIb3DQIJBQAwFAYIKoZIhvcNAwcECC+I/OCseSp1BIHAeSmeCRFHlKzO
Hw1RK5wQi8hSulmi4HZjMJC6rofFFwGqgbBCKo9dBbJXYYsYc1AukAKyo+w6W4a3
0BpTGNAP4/eVB0dsFm7oHpJiZ2jmvgsYTHtchCciCastVph7zOfyggobPfEO97cU
iwtq3v1R5yGA1ic/2vIqtSxynnGzrTiUnwnrvPC0hXMYiDHmYfN66BK898bfcaXp
MqnBFfOQSRAtVzN71hiBWjGjVm3Y4e/vDYse/GLsseDnPK9fw3XA
-----END ENCRYPTED PRIVATE KEY-----
与cryptogen工具生成的密钥对比后,它们有不同的标题行和长度:
-----BEGIN EC PRIVATE KEY-----
MIGkAgEBBDBXq+IIvjEQITYhxIui0ivOY/eVH1Ql8R5wXowiPSdLwZbsIrk6LHjw
jB8D9oqOW4agBwYFK4EEACKhZANiAASNt3bW+GicurJPRaj+oaY/xjaD9Mf/ic4i
3fdgI7wQnvXnGLX0Lf5ygd5ZyyhPW2Tvj7FdOW4vzaqZqSHkaG37GaP6JxpmR3/l
HuF+tncpsjUY7SXTCfzIysxvod9gN9g=
-----END EC PRIVATE KEY-----
有解决此问题的建议吗?
【问题讨论】:
标签: openssl cryptography hyperledger-fabric