4

我正在尝试使用 Let's Encrypt 为我的 Web 服务器生成证书。我想用openssl手动生成key和csr,然后用letsencrypt/certbot获取证书。我特别希望证书使用sha256withecdsa. 特别是我想使用曲线secp521r1(又名P-521)。

但是,当我输入命令时,密钥生成和 csr 生成工作正常

certbot certonly --apache -d [censored] --csr mycsr.csr --agree-tos

我收到以下错误:

请求消息格式不正确 :: 证书请求中的密钥无效 :: ECDSA 曲线 P-521 不允许

ECDSA仍然不受支持,还是我做错了什么?

4

2 回答 2

2

虽然 P-521 在 X.509 证书中使用是有效的,但大多数浏览器放弃了对它的支持,因为它不是套件 B的一部分并且不是很受欢迎。因此,Certbot不允许使用 P-521 生成证书,因为浏览器无论如何都会拒绝它。您仍然可以使用 P-256 和 P-384 曲线生成证书。有关详细信息,请参阅MozillaGoogle错误报告。

于 2017-05-08T02:05:16.653 回答
0

除了我对@AfroThundr 回复的评论之外,事实上,这方面的最终信息来源是https://letsencrypt.org/docs/integration-guide/,它说:

支持的关键算法

Let's Encrypt 接受长度为 2048 到 4096 位的 RSA 密钥,以及 P-256 和 P-384 ECDSA 密钥。帐户密钥和证书密钥都是如此。您不能将帐户密钥用作证书密钥。

我们的建议是提供双证书配置,默认提供 RSA 证书,并为那些表示支持的客户端提供(小得多的)ECDSA 证书。

于 2018-05-17T17:29:01.833 回答