openssl - 来自 PRIVATE KEY 的 Genearte ENCRYPTED PRIVATE KEY
问题描述
我从 DigiCert 获得了 .key 和 .crt 文件。
我的 xyz_com.key 文件的内容是 PRIVATE KEY。
head xyz_com.key -n2
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDqFD0YmmeKyVbg
在此之前,我使用的是自签名证书,使用以下命令生成。
openssl req -new -newkey rsa:2048 -x509 -keyout ca_cert.key -out ca_cert -days 3650 -passin "pass:abcde" -passout "pass:abcde" -subj '/C=xy/ST=xyz/L=xyz/O=xyz/CN=xyz.com/emailAddress=f@g.h' -passout "pass:abcde"
我的 ca_cert.key 文件的内容是 PRIVATE KEY。
head ca_cert.key but -n2
-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIFDjBABgkqhkiG9w0BBQ0wMzAbBgkqhkiG9w0BBQwwDgQITNXPGHEofWsCAggA
所以自签名密钥文件的内容是 ENCRYPTED PRIVATE KEY,而 DigiCerts 密钥文件的内容是 PRIVATE KEY。我的应用程序在使用 ca_cert.key 时工作正常,但与 xyz_com.key 不一样
有没有办法将 PRIVATE KEY 转换为 ENCRYPTED PRIVATE KEY ?
解决方案
是的。以下命令应该这样做:
$ openssl pkcs8 -in mykey.pem -out myencryptedkey.pem -topk8
推荐阅读
- java - 无法使用 JavaFX 在所需位置放置矩形
- c# - 如何在自定义服务中注入 Logger
- c# - 具有多个 DLL 本身的项目参考
- java - ClassNotFoundException 即使在添加依赖 jar 之后
- reactjs - 如何从一个 API 调用设置状态并在下一个 API 调用中使用 URL 数据?
- android - 在 kotlin 中对单个列表进行分组和排序的更好方法
- python - 如何克服 python 子进程模块中的语法错误?
- agens-graph - 如何在 AgensGraph 上创建唯一约束
- java - Spring 安全配置 - HttpSecurity 与 WebSecurity
- rest - 如何在 rest API 自动化中发送一个很长的 xml 文件作为有效负载