我的SSL证书应该使用什么RSA密钥长度?

Bra*_*ann 91 ssl cryptography rsa csr ssl-certificate

我正在创建一个CSR,我想知道哪个可以说是我的RSA密钥的最佳长度.

当然,384可能太弱了,16384可能太慢了.

是否应该使用密钥长度达成共识,具体取决于证书的生命周期?

编辑:像大多数人一样,我希望我的钥匙能够相当强大.我并不担心国家安全局可能会在2019年破坏我的密钥.我只想知道当一个人计划做正常业务时最好的做法是什么(例如电子商务网站)

Geo*_*lly 95

这个答案有点过时了.请注意,它可能不代表当前的最佳做法.

如果您与该领域保持同步,请考虑改进这个答案.


Bruce Schneier在1999年写道:

更长的键长度更好,但只能达到一个点.AES [对称密码]将具有128位,192位和256位密钥长度.这比可预见的未来要长得多.事实上,我们甚至无法想象一个可以进行256位强力搜索的世界.它需要在物理学和我们对宇宙的理解方面取得一些根本性的突破.对于公钥加密[非对称加密],2048位密钥具有相同的属性; 更长的时间毫无意义.

维基百科写道:

RSA声称,在2006年到2010年之间,1024位[非对称]密钥很可能会破解,并且2048位密钥在2030年之前就足够了.如果在2030年之后需要安全性,则应使用3072位的RSA密钥长度.密钥管理指南进一步表明,15360位[非对称] RSA密钥的强度等同于256位对称密钥.

RSA实验室写道(上次根据archive.org改变了2007年):

RSA实验室目前建议企业使用的[非对称]密钥大小为1024位,对于非常有价值的密钥(如认证机构使用的根密钥对),建议使用2048位

如果知道更多的人可以回答为什么会有这种差异,那就太好了.

  • 差异(一方面"256位将永远工作",另一方面"1024位已经废弃")是由于*symmetric*和*asymmetric*算法之间的差异,以及所使用的密钥类型每.对于任何给定的"等效安全级别",您将看到对称与非对称的密钥长度的原始数字非常不同. (12认同)
  • @anjdreas,虽然 2048 年确实是 [最低限度](http://stackoverflow.com/questions/8453529/are-there-any-disadvantages-to-using-a-4096-bit-encrypted-ssl-certificate /8453915#comment60753920_8453915),我会[非常小心](http://webmasters.stackexchange.com/questions/3836/what-are-the-benefits-of-a-more-expensive-ssl-certificate/3837 #comment114486_3837) 引用 CA 文章中的要点。 (2认同)
  • 注意:11年后完全重写了答案,并添加了最新的建议和参考文献。上面的评论是对以前的修订的评论。 (2认同)

eri*_*son 12

由于许多客户要求符合NIST加密标准,因此我使用了NIST特刊800-57,关键管理建议第1部分 §5.6中的指南.我们的大多数应用程序都非常适合112"位"的安全性,因此对应于对称密码的三重DES(或小型高达128位AES)和RSA的2048位密钥.有关粗略等价的信息,请参见表2.

是否有效,能够将它们引用到NIST出版物有助于客户更好地了解安全性(如果他们懒得问).


Yog*_*ogi 10

证书颁发机构不会签署小于2048位的csrs,因此您应该将csr生成为2048位.

  • [引证需要] (6认同)
  • 来源 - http://answers.ssl.com/877/signing-request-needs-to-be-2048-bit-key-size - 像Affirmtrust /趋势科技这样的一些CA已经嵌入4096位根,所以我们可能会切换那些在未来几年 (2认同)

小智 7

即将到来的8月,微软将部署一个补丁到Server 2003/2008,Win7等,这需要使用最小的1024位RSA密钥.所以你不妨开始制定你的"最低限度"标准.


Mik*_*ike 6

对于网站上使用的SSL证书,Thawte.com网站上的此文本(截至2014-07-22)非常重要:

证书颁发机构/浏览器(CA/B)论坛设置的行业标准要求在2014年1月1日之后颁发的证书必须至少为2048位密钥长度.


Sem*_*Zen 5

我需要创建几个新的SSL证书,并且对上述答案不满意,因为它们似乎含糊不清或过时,因此我做了一些深入的研究。最下面的答案是正确的,请使用“ 2048位键...更长的时间是没有意义的”

将位长增加到4096,可能会给服务器增加潜在的有意义的负载(取决于您现有的负载),同时基本上提供了微不足道的安全性升级

如果您需要的长度超过2048位密钥,而又不需要更长的长度,则需要一种新的算法