首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用rsa:2048创建的SSL证书是否使用SHA-2加密哈希算法?

使用rsa:2048创建的SSL证书是否使用SHA-2加密哈希算法?
EN

Stack Overflow用户
提问于 2015-08-28 04:39:23
回答 2查看 3.5K关注 0票数 3

谷歌正试图使用SHA1散列算法逐步淘汰SSL证书的使用。因此,我希望创建一个符合SHA2的自签名证书。我知道SHA是一种散列算法,而RSA是一种加密算法。我找到了以下生成密钥和证书对的命令:

代码语言:javascript
运行
复制
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem

这会使用SHA-2散列算法生成证书吗?

部署证书后,Chrome报告如下:

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-28 06:22:17

我相信我已经解决了这个问题。我使用的命令使用了openssl的默认散列算法,即SHA-1。要创建SHA-2散列证书,必须指定SHA-2选项。在这种情况下,我选择使用SHA-256。以下是更新的命令:

代码语言:javascript
运行
复制
openssl req -newkey rsa:2048 -sha256 -new -nodes -x509 -days 3650 -keyout key.pem -out cert.pem
票数 2
EN

Stack Overflow用户

发布于 2015-08-28 05:01:19

证书颁发者用于签署证书请求的哈希算法与证书请求本身无关。这意味着CA可能对2048位键使用SHA-2,但也可能使用SHA-1。它甚至可能重新签署同一证书,该证书曾经与SHA-1签署,现在与SHA-2签署。目前大多数(全部?)公共CA使用SHA-2,因为SHA-1由于安全原因被逐步淘汰。

在您的示例中,您使用openssl req命令不仅创建证书请求,而且对其进行签名,即创建一个自签名证书。现代版本的openssl将使用SHA-2签署这个新的证书,在默认情况下,旧版本SHA-1。要强制执行SHA-2作为签名算法,请使用-sha256参数。

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

https://stackoverflow.com/questions/32263453

复制
相关文章

相似问题

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