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

我正在创build一个CSR,我想知道哪个是我的RSA密钥的最佳长度。

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

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

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

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

如果您在现场保持最新状态,请考虑改进此答案。


布鲁斯·施奈尔在1999年写道:

更长的钥匙长度是更好的,但只能达到一个点。 AES [对称密码]将具有128位,192位和256位密钥长度。 这比可预见的将来要长得多。 事实上,我们甚至无法想象一个可以进行256位蛮力search的世界。 它需要物理学的一些根本性突破和我们对宇宙的理解。 对于公钥密码学[不对称密码],2048位密钥具有相同的属性; 时间越长越没有意义。

维基百科写道:

RSA声称,在2006年到2010年之间,1024位[不对称]密钥可能会变得易受攻击,2048位密钥足够到2030年。如果安全性要求超过2030,则应使用3072位的RSA密钥长度。NIST密钥pipe理准则进一步表明,15360比特[不对称] RSA密钥在强度上与256比特对称密钥是等效的。

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

RSA实验室目前推荐企业使用的1024位非对称密钥大小,以及2048位密钥,用于authentication机构使用的根密钥对等非常有价值的密钥

如果有人知道更多,可以回答为什么会有这种差异,那会很好。

由于许多客户需要遵守NIST密码标准,因此我使用NIST特别出版物800-57 “关键pipe理第1部分build议书” §5.6中的指导。 我们的大多数应用程序非常适合112位“安全位”,因此对应于用于对称密码的三重DES(或小至颠簸128位AES)和用于RSA的2048位密钥。 参见表2粗略的等价。

是否有效,能够将它们引用到NIST出版物中,可以帮助客户更好地了解安全性(如果他们打扰的话)。

证书颁发机构不会签署小于2048位的crs,所以你应该生成你的csr为2048位。

今年8月,微软打算部署一个补丁到Server 2003/2008,Win7等..这将需要使用最低1024位的RSA密钥。 所以你也可以开始制定你的“最低限度”的标准。

对于网站上使用的SSL证书,Thawte.com网站(2014-07-22)中的文字很重要:

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

我需要创build几个新的SSL证书,并不满意上面的答案,因为他们似乎含糊或过时,所以我做了一点挖掘。 底线select的答案是正确的使用“2048位密钥…更长是没有意义的”

将位长增加到4096会为您的服务器增加一个潜在的有意义的负载 (取决于您现有的负载),同时提供基本上不显着的安全升级

如果您需要比2048位密钥更长的位置,则不需要更长的位长度,您需要一个新的algorithm

我认为4096是好的RSA

检查这个链接

SHA-1签名的结束并不是什么新鲜事,但Google已经加速了Chrome的进程。 在接下来的几周内,你应该检查他们的SSL证书。

这可能会有所帮助