如何将 PKCS#8 格式的 PEM 私钥转换为传统格式?
Posted
技术标签:
【中文标题】如何将 PKCS#8 格式的 PEM 私钥转换为传统格式?【英文标题】:How to convert PKCS#8-formatted PEM private key to the traditional format? 【发布时间】:2011-02-26 19:34:52 【问题描述】:来自 OpenSSL 1.0 更改日志:
将 PKCS#8 设为默认写入格式 对于私钥,替换 传统格式。这种形式是标准化的,更安全的,不 包括一个隐式的 MD5 依赖项。 [史蒂夫汉森]
但是,我需要以前传统格式的私钥文件。 是否可以将 pem 文件从 PKCS#8 转换为传统格式(使用 OpenSSL.exe 应用程序)?
非常感谢!
【问题讨论】:
【参考方案1】:以这种方式成功解决了这个问题 - 请求:
openssl req -configconfigfile.cfg -newkey rsa:2048 -keyout newkey.pem -out newreq.pem 365
然后,我将其转换为 RSA 格式:
openssl rsa -in newkey.pem -out newkey.pem
希望对某人有所帮助。
【讨论】:
如果有人希望将其从传统格式反向转换为 pkcs8 格式:openssl pkcs8 -topk8 -inform pem -in file.key -outform pem -nocrypt -out file.pem
【参考方案2】:
-
rsa 私钥
从 PKCS#1 转换为 PKCS#8:
openssl pkcs8 -topk8 -inform pem -in private_pkcs1.pem -outform pem -nocrypt -out private_pkcs8.pem
从 PKCS#8 转换为 PKCS#1:
openssl rsa -in private_pkcs8.pem -out private_pkcs1.pem
-
rsa 公钥
从 PKCS#8 转换为 PKCS#1:
openssl rsa -pubin -in public_pkcs8.pem -RSAPublicKey_out -out public_pkcs1.pem
从 PKCS#1 转换为 PKCS#8:
openssl rsa -RSAPublicKey_in -in public_pkcs1.pem -pubout -out public_pkcs8.pem
【讨论】:
以上是关于如何将 PKCS#8 格式的 PEM 私钥转换为传统格式?的主要内容,如果未能解决你的问题,请参考以下文章
RSA公钥和私钥的生成以及PKCS#1与PKCE#8格式的转换
RSA 私钥的 PKCS#1 和 PKCS#8 格式 [关闭]