首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在使用openssl仅使用私钥创建新的CSR时,如何获得公钥?

在使用openssl仅使用私钥创建新的CSR时,如何获得公钥?
EN

Stack Overflow用户
提问于 2014-02-12 21:03:37
回答 1查看 175关注 0票数 1

首先,我使用openssl创建私钥:

代码语言:javascript
复制
openssl genrsa -des3 -out private.key 1024

所以我现在有了密码的私钥,现在创建CSR:

代码语言:javascript
复制
openssl req -new -key private.key -out CSR.csr

但是,当我显示这个CSR的内容时,就会包含公钥:

代码语言:javascript
复制
    Subject Public Key Info:
        Public Key Algorithm: rsaEncryption
            Public-Key: (1024 bit)
            Modulus:

如果我只提供私钥,这个公钥是从哪里来的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-13 00:41:00

如果我只提供私钥,这个公钥是从哪里来的?

对于RSA,私钥是{n,e,d}n是模,e是公共指数,d是私有指数。

还有一些额外的参数可以用来加速RSA操作,比如dpdq,但是它们并不是严格需要的。他们应该保密。

对于RSA,公钥是{n,e}。因此,如果您有私钥,则这些值总是可用的。n是模,e是公钥,与私钥一样。

如果您设法丢失了e,您通常可以恢复它,因为它通常是一个众所周知的值,如3、17或65537。如果您失去了d,您将有因子n来恢复它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21739557

复制
相关文章

相似问题

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