-
-
Notifications
You must be signed in to change notification settings - Fork 10.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Raise the minimum RSA modulus size to 1024 bits. #25092
Comments
(1) seems pretty reasonable to do right now Would you be willing to submit a PR for this? (1) is likely pretty straightforward to accomplish by updating RSA_MIN_MODULUS_BITS |
Doing some tests though, it doesn't seem like anything breaks when trying to load/use a 512 bit RSA key when compiled with I can definitely submit a PR to make that change, though I'd like to understand under what circumstances Might also be worth updating |
As a data point on what the ecosystem is doing, Mbed TLS enforces 1024 bits for generation since 2023, i.e. it's already at stage 1. Our motivating example was a confusion between bits and bytes; it also solved the problem of confusing sensible ECC or symmetric bit-sizes with RSA bit-sizes. I've put stages 2/3 up for consideration on our planning board for our next major release. |
The first publicly known instance of a 512 bit RSA modulus being factored was in 1999.
In 2009, an individual cracked a 512 bit RSA modulus by themself with a single PC.
The "Factoring as a Service" paper, showing that such keys could be broken in a few hours for tens of dollars, came out in 2015.
In 2018, OpenSSL v1.1.1 set its minimum RSA modulus size to 512 bits. This is still the minimum as of OpenSSL v3.3.1.
People still use 512 bit RSA keys without realizing that they're catastrophically weak.
This should be easy to stop.
I propose the following deprecation stages:
A more conservative approach could temporarily include an option in
openssl.conf
to temporarily re-enable dangerously weak keys while systems are updated.The text was updated successfully, but these errors were encountered: