首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用带有RSA-PSS选项的openssl genpkey实用程序生成正确的RSA密钥。

无法使用带有RSA-PSS选项的openssl genpkey实用程序生成正确的RSA密钥。
EN

Unix & Linux用户
提问于 2019-06-13 14:45:31
回答 1查看 4K关注 0票数 1

我试图在Linux上使用openssl创建一个RSA密钥,然后将其转换为PuTTY格式,这样我也可以在Windows上使用它。

openssl genpkey -algorithm RSA-PSS -out myKey.pem -outform PEM -pkeyopt rsa_keygen_bits:2048

生成密钥。我cat它,看起来很好。

现在将其转换为PuTTY格式:

puttygen myKey.pem -o myKey.ppk -O private

我得到以下错误:

puttygen: error loading 'myKey.pem': unrecognised key type

我尝试使用以下命令检查密钥:

openssl rsa -in myKey.pem -text

我得到以下错误:

140527068488128:error:0607907F:digital envelope routines:EVP_PKEY_get0_RSA:expecting an rsa key:../crypto/evp/p_lib.c:464:

知道怎么回事吗?

EN

回答 1

Unix & Linux用户

发布于 2019-06-13 15:29:23

你使用了错误的算法: RSA-PSS而不是RSA。

此命令将生成预期的键:

代码语言:javascript
复制
openssl genpkey -algorithm RSA -out myKey.pem -outform PEM -pkeyopt rsa_keygen_bits:2048

请注意,唯一的更改是将RSA-PSS替换为RSA

对于给定的私钥,您可以检索有关它的信息,包括所使用的算法,如下所示:

代码语言:javascript
复制
openssl asn1parse -in myKey.pem

错误的算法(用于SSH的使用)将有一条类似于此的行,其中包括:

代码语言:javascript
复制
    9:d=2  hl=2 l=   9 prim: OBJECT            :rsassaPss

尽管RSA算法将有一些类似的东西,其中包括:

代码语言:javascript
复制
    9:d=2  hl=2 l=   9 prim: OBJECT            :rsaEncryption
票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/524688

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档