首页 > 解决方案 > 我在文本文件中有私钥。如何生成 .pem 文件或 .cer 文件

问题描述

我有计划文本格式的私钥。我想转换为 .pem 或 .cer 文件。我不知道开放 SSL。我能够在 .net 应用程序中使用纯文本文件的私钥。谁来帮帮我。如何将其转换为 .pem 或 .cer 以在我们的项目中使用。

标签: certificatersax509certificatepem

解决方案


因为您的私钥的内容以 开头-----BEGIN RSA PRIVATE KEY-----,所以文件格式为PEM ( RFC 7468 )。

扩展名.pem表示文件格式为 PEM。但是,扩展名并没有告诉任何有关文件内容的信息。内容可以是私钥、公钥、证书或其他东西。

扩展名.cer表示文件的内容是证书。但是,扩展名并没有说明文件格式。格式可能是 PEM、DER ( X.690 ) 或其他格式。如果内容为文本数据且包含-----BEGIN ?????-----,则格式为 PEM。另一方面,如果内容是二进制数据,则格式很可能是 DER。

扩展名.key通常用于表示文件的内容是私钥。但是,扩展名并没有说明文件格式。格式可以是 PEM、DER 或其他格式。

来自Illustrated X.509 Certificate的下图说明了ASN.1 ( X.680 ))、DER ( X.690 )、BASE64 ( RFC 4648 ) 和PEM ( RFC 7468 ) 之间的关系。

ASN.1、DER、BASE64 和 PEM 之间的关系

ASN.1、DER、BASE64 和 PEM 之间的关系(应用到 X.509 证书)

如果要将纯文本 (PEM) 中的私钥转换为某种二进制数据,请键入以下命令将格式转换为 DER。

openssl pkey -inform PEM -in private_key.pem -outform DER -out private_key.der
  • pkey: 是键操作的子命令。
  • -inform PEM:表示输入文件的格式为PEM。
  • -in private_key.pem: 指定输入文件。
  • -outform DER: 指定 DER 作为输出格式。
  • -out private_key.der: 指定输出文件。

推荐阅读