我如何使用结构节点sdk复制以下命令
fabric-ca-client enroll -d -u https://peer1-org2:peer1PW@0.0.0.0:7052 --enrollment.profile tls --csr.hosts peer1-org2
下面是我在做什么,但是ca给了我正常的入学证书而不是tls的。当我将fabric-ca-client用于tls证书时,它给了我tls证书,并且我的网络成功运行,但是当我将fabric节点客户端用于相同的证书时,它给了我tls握手错误。我知道我必须通过csr.hosts peer1-org2,但以下请求中的csr参数需要由我不想使用的openssl生成的csr,我想依靠结构节点sdk的默认功能,该功能由它自己生成
let enrollment = await ca.enroll({ enrollmentID: ordererName, enrollmentSecret: admnSecret, profile: `tls` });
答案 0 :(得分:1)
@阿伦
您提到的命令对于TLS是正确的
let enrollment = await ca.enroll({ enrollmentID: ordererName, enrollmentSecret: admnSecret, profile: `tls` });
了解配置文件TLS:
当CA对特定身份进行签名时,它需要一些详细信息,例如您要对新生成的身份进行的处理,您需要提供这些详细信息,CA会在内部使用这些说明并以表格的形式在新身份中提供扩展名
如何验证TLS?
使用在线工具解析证书,您应该在扩展部分下看到以下信息,然后可以将此证书和privcatekey用于TLS
TLS Web服务器身份验证,TLS Web客户端身份验证
keyUsage
Digital Signature, Key Encipherment
extendedKeyUsage
TLS Web Server Authentication, TLS Web Client Authentication
basicConstraints
CA:FALSE
authorityKeyIdentifier
keyid:10:FC:A9:5A:4D:91:7A:5A:58:4E:BC:5A:8F:86:24:DD:B9:54:D3:F2:24:B1:9E:08:75:EC:7E:46:08:8D:28:3B
subjectAltName
DNS:peer0.hype, DNS:peer0, DNS:localhost, DNS:hype-peer0-hype, DNS:hype-peer1-hype