【发布时间】:2017-02-24 01:31:51
【问题描述】:
尝试使用以下命令将 .pem 文件转换为 .der 文件。
openssl x509 -in public_key.pem -out cert.der -outform DER
遇到错误
unable to load certificate
31833:error:0906D06C:PEM routines:PEM_read_bio:no start line:/SourceCache/OpenSS
L098/OpenSSL098-52.30.1/src/crypto/pem/pem_lib.c:648:Expecting: TRUSTED CERTIFIC
ATE
我已经使用下面生成了 RSA 私钥/公钥。
openssl genrsa -out private_key.pem 2048
openssl rsa -pubout -in private_key.pem -out public_key.pem
【问题讨论】:
-
您生成的是 RSA 密钥对,而不是证书。每个证书都包含一个公钥,您可以使用 RSA 密钥创建证书...
-
@Robert 你能指导一下,怎么做?
-
根据答案和欺骗,您可能需要证书。但是如果你真的想要一个只有公钥的文件,它实际上只能用于 OpenSSL 和一些 Java 程序(那些使用
X509EncodedKeySpec显式处理密钥的程序),请执行openssl {rsa,pkey} -pubin -in public.pem -out public.der -outform der或首先执行openssl {rsa,pkey} -in private.pem -pubout -out public.der -outform der.
标签: ssl encryption openssl rsa encryption-asymmetric