gpt4 book ai didi

node.js - 如何将颁发的 SSL 证书安装到 hyperledger rest 服务器?

转载 作者:太空宇宙 更新时间:2023-11-03 14:03:54 24 4
gpt4 key购买 nike

我有用于 Java/Tomcat 服务器的有效 GoDaddy SSL 证书,由 3 个文件组成:

  • a6d8a8b6f1b7d24b.crt
  • gdig2.crt.pem
  • gd_bundle-g2-g1.crt

这三个都是base64编码的文本文件,内容是这样的

-----BEGIN CERTIFICATE-----
MIIFNjCCBB6gAwIBAgIJAKbYqLbxt9JLMA0GCSqGSIb3DQEBCwUAMIG0MQswCQYD
...
MLLO84KBeOlWOD9ShSj2OqPQiozGPPjqzuIyyWJF37s0Y/BpgJPfqHgE
-----END CERTIFICATE-----

gd_bundle-g2-g1.crt 中包含多个这样的条目。

现在,Hyperledger 说明 here解释:

composer-rest-server -t -c /tmp/cert.pem -k /tmp/key.pem -p hlfv1 -n my-network -i alice1 -s suchs3cret

在我的案例中,哪个应该是 cert.pem,哪个是 key.pem?他们是否需要任何转换,如果需要,如何转换?这些证书适用于使用 jks keystore 的 Java 框架。 Hyperledger 使用 node.js 并产生如下错误

Error: error:0906D06C:PEM routines:PEM_read_bio:no start line
at Error (native)
at Object.createSecureContext (_tls_common.js:85:17)
at Server (_tls_wrap.js:776:25)
at new Server (https.js:26:14)
at Object.exports.createServer (https.js:47:10)
at Promise.then (/home/hla/.nvm/versions/node/v6.11.2/lib/node_modules/composer-rest-server/server/server.js:148:28)
at process._tickCallback (internal/process/next_tick.js:109:7)

我尝试以各种组合替换文件,但到目前为止只收到错误消息。我想我实际上已经尝试了所有可能的组合,所以格式很可能是错误的。

GoDaddy 还允许以各种流行格式(准确地说是 Apache、Exchange、IIS、MacOS X 和 Tomcat)导出证书,但 Hyperledger 显然不在它们之间。

当我用

生成证书时也可能有问题
openssl req -newkey rsa:2048 -new -nodes -keyout key.pem -out csr.pem

(显然 key.pem 应该是关键),我也得到同样的错误:

Error: error:0906D06C:PEM routines:PEM_read_bio:no start line

OpenSSL 版本 OpenSSL 1.0.2g 2016 年 3 月 1 日。 Node --version。 Node ——版本。 Node ——版本 5.4.0。

最佳答案

为了能够启用 tls,rest 服务器需要两件事。它需要一个私钥和一个与该私钥关联的公共(public)证书。它们都需要采用 .pem 格式。公共(public)证书的文本将以 -----BEGIN CERTIFICATE----- 开头,而私钥的文本将以 -----BEGIN PRIVATE KEY- 开头----openssl 命令可用于生成一个自签名证书,例如可供其余服务器使用的证书。在上面给出的示例中,您实际上生成了一个 CSR(证书请求),它是根据它生成的私钥为您创建证书的请求,因此它创建的 csr.pem 文件不是可用的证书。 CSR 是您发送给证书颁发机构以请求创建证书的内容。

关于node.js - 如何将颁发的 SSL 证书安装到 hyperledger rest 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46253087/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com