如何将.crtstring转换为.der证书二进制文件并将其保存到Redis中?
我试图将.crtstring转换成.der证书并将其保存到Redis中。 我试图用Nodejs复制以下步骤
openssl x509 -outform der -in certificate.pem -out certificate.der openssl rsa -outform DER -in key.pem -out key.der redis-cli -x HMSET domain:testsite1.com cert < testsite1.com.der redis-cli -x HMSET domain:testsite1.com key < testsite1.com.key.der
.crtstring看起来像这样
-----BEGIN CERTIFICATE----- XXXXXXXXXXX -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- XXXXXXXXXX -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- XXXXXXXXX -----END CERTIFICATE-----
这是我使用node-forge
forge npm和redis
失败的尝试。
var certDER = forge.asn1.toDer(forge.pki.certificateToAsn1('/opt/resty/ssl/*.ngdeploy.com.chained.crt',{encoding: 'utf8'})); REDIS.hmset('test','cert',certDER);
我试着谷歌search的解决scheme,但我没有find任何将.crtstring转换为.der二进制文件。 我正在寻找一个Node.js解决scheme,而不是一个OpenSSL解决scheme。 请指教。
文件的扩展往往是毫无意义的。 你所寻找的是一种将文本或PEM格式(Base64)转换为二进制或DER的方法。
最简单的方法是使用Openssl,但是如果您必须使用JS, 这个线程可能会帮助您确保您将转换(PEM转换为DER,而不是DER转换为PEM)