让我们用ECC加密csr(P-521)

时间:2017-05-03 15:52:53

标签: ssl encryption lets-encrypt

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

但是,当我输入命令

时,密钥生成和csr生成工作正常
certbot certonly --apache -d [censored] --csr mycsr.csr --agree-tos

我收到以下错误:

  

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

ECDSA仍然不受支持,或者我做错了什么?

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

除了我对@AfroThundr回复的评论之外,事实上关于此问题的最终信息来源是https://letsencrypt.org/docs/integration-guide/并且它说:

  

支持的密钥算法

     

让我们的加密接受长度为2048到4096位的RSA密钥,以及P-256和P-384 ECDSA密钥。这对于帐户密钥和证书密钥都是如此。您不能将帐户密钥重新用作证书密钥。

     

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