我不确定这是否可能。另外,OpenSSL 是一个丑陋的实用程序之母:/
我需要将证书+私钥作为 DER 上传到 ESET 安全管理中心 (ESMC),至少根据他们的技术支持。
我使用 XCA 进行此小型部署,并且没有选项将公共+私有导出为 DER,只能导出 PEM(或其他一些格式)。那么问题来了:如何将PEM private+public 转换为DER?
PEM 和 DER 之间的区别仅在于存储方式不同。DER 是二进制形式,PEM 是 base64 编码文件(带有“标头”)。由于 DER 或多或少是一种原始形式,因此您只能在文件中存储一个对象。
如果您需要更多对象(例如密钥和证书),您需要 PEM 编码形式,其中基于“标头”可以区分对象(在文件中对象相互跟随)或某些特定的容器格式,如 PKCS12(也支持由 openssl 提供)。
对于 openssl,您可以使用选项inform并outform指定您是否对 PEM(默认情况下使用,以防您不请求 DER)或 DER 感兴趣。
对于密钥(假设 rsa)- 由于 PEM 是默认值,因此以下命令是相同的:
openssl rsa -in <file_with_key> -out <new_der_key_file> -outform DER
openssl rsa -in <file_with_key> -inform PEM -out <new_der_key_file> -outform DER
Run Code Online (Sandbox Code Playgroud)
对于证书 - 还有两种相同的形式:
openssl x509 -in <cert_file> -out <new_der_cert> -outform DER
openssl x509 -in <cert_file> -inform PEM -out <new_der_cert> -outform DER
Run Code Online (Sandbox Code Playgroud)
如果是 pkcs12 容器(如果支持的话,如果需要,将在导入期间完成转换):
openssl pkcs12 -export -in <cert_file> -inkey <key_file> -out <pkcs12_file>.p12
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8207 次 |
| 最近记录: |