如何将SSH公钥从PEM转换为DER格式?

爱德华

我想将现有的公共密钥(使用生成ssh-keygen)从PEM-format转换为DER-format

我试过了:

openssl rsa -in ~/.ssh/id_rsa.pub -inform PEM -pubin -outform DER -out ~/.ssh/id_rsa.pub.der

不幸的是,这给出了以下错误:

unable to load Public Key
139946985690784:error:0906D06C:PEM routines:PEM_read_bio:no start line:pem_lib.c:703:Expecting: PUBLIC KEY

该文件~/.ssh/id_rsa.pub包含一个公共密钥;cat ~/.ssh/id_rsa.pub给出:

ssh-rsa ...... user@machine

我究竟做错了什么?

八重桥

OpenSSH公钥格式与PEM格式不同。您必须运行对其ssh-keygen进行转换。

ssh-keygen -f ~/.ssh/id_rsa.pub -e -m PEM >pubkey.pem

然后使用将其转换为DER格式openssl rsa

openssl rsa -RSAPublicKey_in -in pubkey.pem -inform PEM -outform DER -out ~/.ssh/id_rsa.pub.der -RSAPublicKey_out

请注意,您还必须指定-RSAPublicKey_in(不是-pubin)并将-RSAPublicKey_out其保留为RSA公钥(PKCS#1)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章