Die gegenwärtig üblichste Empfehlung für die Länge neuer RSA Schlüssel beträgt 2048 Bit. So steht es auch beim deutschen Bundesamt für Sicherheit in Informationstechnik (BSI) (Stand Frühling 2017):
Für langfristige Sicherheitsanwendungen sollten 2048 Bit RSA -Moduli […] eingesetzt werden.
Auch Qualys empfiehlt nach wie vor den Einsatz von 2048 Bit RSA Schlüsseln (Stand Frühling 2017):
https://github.com/ssllabs/research/wiki/SSL-and-TLS-Deployment-Best-Practices
Diese Empfehlungen beschreiben ein Minimum an Sicherheit unter gewissen Annahmen. Nach Möglichkeit sollte man sich bei neuen RSA Schlüsseln nicht auf die Minimalanforderungen verlassen.
Das BSI merkt im oben referenzierten Dokument an, dass für eine mit AES-128 vergleichbare Stärke RSA Schlüssel von etwa 3000 Bit notwendig sind. Das heisst im Umkehrschluss, dass RSA Schlüssel mit nur 2048 Bit weniger solide sind als eine symmetrische Verschlüsselung mit 128 Bit.
Der Vergleich der Stärke von RSA mit ungeschwächten symmetrischen Verfahren gestaltet sich ungefähr wie folgt:
RSA Schlüssel <--> Symmetrischer Schlüssel 1024 Bit <--> 80 Bit 2048 Bit <--> 112 Bit 3072 Bit <--> 128 Bit 15'360 Bit <--> 256 Bit
Die eingesetzte RSA Schlüssellänge muss im Einzelfall entschieden werden. In den Entscheid einfliessen müssen die Schutzanforderungen an die verschlüsselten Daten und technische Einschränkungen wie Rückwärtskompatibilität und Performance. Und, was oft vergessen geht, das Zusammenspiel mit anderen Verschlüsselungsalgorithmen. Geläufig, auch bei manchen Cipher Suiten von Transport Layer Security (TLS), wird RSA nur für den Austausch eines symmetrischen Schlüssels verwendet. Anschliessend werden die Nutzdaten mithilfe dieses symmetrischen Schlüssels verschlüsselt. Es scheint wenig sinnvoll, die Nutzdaten mit AES-256 zu verschlüsseln, den Schlüsselaustausch aber mit RSA-2048 zu vollziehen. Denn dabei entsteht der Eindruck, dass die Nutzdaten mit AES-256 recht solide gesichert sind, tatsächlich aber entspricht die Stärke der gesamten Verschlüsselung nur 112 Bit.
Beispielsweise wird im Rahmen des automatischen Informationsaustausches über Finanzkonten (AIA) ein grundsätzlich sehr sorgfältig gebautes System der OECD eingesetzt. Bei der Konstruktion der eigentlichen Austauschplattform haben sich die Verantwortlichen grosse Mühe gegeben. Die eigentlichen Steuerdaten hingegen werden (Stand 2017) symmetrisch mit AES-256 und einem zufälligen Schlüssel verschlüsselt. Doch dann wird der zufällige Schlüssel mit RSA2048 Bit verschlüsselt. Das ist vollkommen absurd.
Wenn nicht Kompatiblität oder Performance echte Probleme erzeugen, ist bei der Schlüssellänge von RSA Schlüsseln am falschen Ort gespart.
Die Europäische Agentur für Netz- und Informationssicherheit ENISA empfiehlt für langfristige Sicherheit seit dem Jahr 2013 RSA Schlüssel mit 15’360 Bit (http://www.enisa.europa.eu/activities/identity-and-trust/library/deliverables/algorithms-key-sizes-and-parameters-report/at_download/fullReport), was etwa der erwarteten Stärke von AES-256 entspricht.
Für einen öffentlichen Webserver sind 15k Bit nicht realistisch umsetzbar. Viele CAs werden entsprechende Zertifikate gar nicht signieren (weiss jemand, wieso eigentlich nicht?) und bereits bei 8k beginnen ältere iPhones zu bocken. Für einen öffentlichen Webserver sind jedoch 4096 Bit kein Problem und ist m.E. eine gute Standardeinstellung mit etwas Sicherheitsmarge. Für Verbindungen zwischen Backendsystemen kann man auch problemlos 8k einsetzen, vor allem wenn die Anzahl der Verbindungen gering ist.