依據美國國家標準研究院NIST SP800-57-A 2005年版,如下表,建議用戶RSA金鑰長度在2011年起以RSA 2048位元為宜。
Algorithm security lifetimes |
Symmetric Key algorithms |
FFC
(e.g., DSA, D-H) |
IFC
(e.g.RSA) |
ECC
(e.g.,ECDSA) |
Through 2010 (min. of 80 bits of strength) |
2TDEA
3TDEA
AES-128
AES-192
AES-256 |
Min.:
L = 1024;
N =160 |
Min:
k = 1024 |
Min:
f = 160 |
Through 2030 (min. of 112 bits of strength) |
3TDEA
AES-128
AES-192
AES-256 |
Min:
L = 2048
N = 224 |
Min:
k = 2048 |
Min:
f = 224 |
Beyond 2030 (min. of 128 bits of strength) |
AES-128
AES-192
AES-256 |
Min:
L = 3072
N = 256 |
Min:
k = 3072 |
Min:
f = 256 |
依據NIST SP800-57-A 2005年版建議的演算法和最小的金鑰長度值,以當時的推估,RSA 2048 位元的金鑰安全強度可以用到2030年的。但隨著資訊科技的發展,最小金鑰長度的使用期限會再下修。
NIST所建議的為最小金鑰長度,如果要更安全可常換金鑰(有如經常更換通行密碼一樣),故SSL憑證效期最長為三年,此外則可使用更安全的演算法及金鑰長度。
根據美國國家標準研究院 2012年7月出版的Recommendation for Key Management, Special Publication 800-57 Part 1 Rev. 3,同樣也是建議2011-2030年使用非對稱式密碼金鑰長度至少為2048位元。
微軟Root Certificate 計畫於2009年1月要求各國Root CA回覆Root CA計畫金鑰長度提升問卷,否則2011年Root CA憑證將遭自CA Trust List移除,其原因就在於美國NIST SP 800-57建議美國政府於2010-12-31以後,不應再繼續使用1024 bits 長度的RSA金鑰,加上有研究團隊提出利用2004年中國山東大學王小雲教授團隊所發表的MD5碰撞方法成功地仿造出了一張VeriSign CA憑證,而且此偽造的憑證如果用VeriSign的Root CA憑證來檢驗,能夠正常通過憑證路徑演算法的檢驗,建議不再使用MD5 雜湊函數演算法。
Mozilla Firefox也針對國外其他CA之RA遭攻擊事件等議題,希望各國PKI提升安全強度,包括將用戶憑證金鑰之長度提升為2048位元,並於2013年12月底前廢止1024位元憑證,以策用戶金鑰使用之安全,依據Mozilla CA Certificate Maintenance Policy (Version 2.2) -提及 8.We consider the following algorithms and key sizes to be acceptable and supported in Mozilla products:
- SHA-1 (until a practical collision attack against SHA-1 certificates is imminent);
- SHA-256, SHA-384, SHA-512;
- Elliptic Curve Digital Signature Algorithm (using ANSI X9.62) over SECG and NIST named curves P-256, P-384, and P-512;
- RSA 2048 bits or higher; and
- RSA 1024 bits (only until December 31, 2013).
9. We expect CAs to maintain current best practices to prevent algorithm attacks against certificates. As such, the following steps will be taken:
- after June 30, 2011, software published by Mozilla will return an error when a certificate with an MD5-based signature is used;
- all end-entity certificates with RSA key sizes smaller than 2048 bits must expire by December 31, 2013;
- after December 31, 2013, Mozilla will disable or remove all root certificates with RSA key sizes smaller than 2048 bits; and
- all new end-entity certificates must contain at least 20 bits of unpredictable random data (preferably in the serial number).
Opera Browser之Root Certificate Program也有要求用戶憑證之金鑰長度最少為2048位元。
我國政府機關所使用的SSL伺服器軟體憑證(由中華電信受委託維運的政府憑證管理中心)也自2009年9月起則停發1024位元SSL憑證。
依據CA/Browser Forum Baseline Requirements for the Issuance and Management of Publicly-Trusted Certificates v.1.1 Appendix A - Cryptographic Algorithm and Key Requirements (Normative)詳如下表,效期至2013年12月31截止的SSL憑證最小RSA金鑰長度為1024位元,憑證效期在2013年12月31以後才到期的SSL憑證最小金鑰長度為2048位元。
|
Validity period ending on or before 31 Dec 2013 |
Validity period ending after 31 Dec 2013 |
Digest
algorithm |
SHA1*, SHA-256, SHA-384 or SHA- 512 |
SHA1*, SHA-256, SHA-384 or SHA-512 |
Minimum
RSA modulus
size (bits) |
1024 |
2048 |
ECC curve |
NIST P-256, P-384, or P-521 |
NIST P-256, P-384, or P-521 |
* SHA-1 MAY be used until SHA-256 is supported widely by browsers used by a substantial portion of relying parties worldwide. |