将 DER 公钥与 PEM 相互转换

问题描述 投票:0回答:1

我有 DER 格式的公钥。使用 openssl 的 asn1parse 给了我这个:

0:d=0 h1=4 1= 265 cons: SEQUENCE
4:d=1 h1=4 1= 256 prim: INTEGER: -4B95.........831 (I removed most of it)
264:d=1 h1=2 1=    3 prim: INTEGER 

我使用以下命令将其转换为 PEM:

openssl rsa -RSAPublicKey_in -in myderkey -inform DER -outform PEM -out mypubkey

asn1parse 转换后如下所示:

0:d=0 h1=4 1= X cons: SEQUENCE
4:d=1 h1=2 1= X cons: SEQUENCE
...
...
...

我使用以下方法将其转换回 DER:

openssl rsa -pubin -in mypubkey -inform PEM - outform DER -out backToDerKey

将其转换回来后 - asn1parse 没有改变(当密钥为 PEM 格式时保持不变)

有没有办法将PEM公钥转换为DER并与原始DER密钥具有相同的ASN1?

尝试以编程方式创建公钥并将其保存到文件中,但得到与 openssl 相同的结果。

openssl pem der
1个回答
0
投票

使用

-RSAPublicKey_out
参数来保留原始 PKCS1 格式 RSA 密钥。
您需要在希望 OpenSSL 

openssl

命令发出 PKCS1 格式的每个阶段执行此操作。

因此,如果您想要 PEM 文件的格式,请按如下操作:

rsa

如果您希望将其保存在 DER 文件中,请按以下步骤操作:

openssl rsa -RSAPublicKey_in -in myderkey -inform DER -out mypubkey -RSAPublicKey_out

	
© www.soinside.com 2019 - 2024. All rights reserved.