Zum Hauptinhalt springen

10. Sicherheitsüberlegungen (Security Considerations)

Sicherheitsüberlegungen wurden an verschiedenen Stellen in diesem Dokument diskutiert.

Wichtige Sicherheitspunkte

Schlüssellänge

Die Sicherheit von RSA-Schlüsseln hängt stark von der Größe des Modulus ab. Empfohlene Mindestschlüssellängen:

  • 2048 Bit: aktuell empfohlene Mindestlänge
  • 3072 Bit: empfohlen für Anwendungen mit hoher Sicherheit
  • 4096 Bit: für Langzeitschlüssel oder extrem hohe Sicherheitsanforderungen

Schemaauswahl

  • RSAES-OAEP: das Verschlüsselungsschema für neue Anwendungen MUSS (REQUIRED) unterstützt werden
  • RSASSA-PSS: für neue Anwendungen EMPFOHLENES (RECOMMENDED) Signaturschema
  • PKCS1-v1_5: nur für Kompatibilität beibehalten, bekannte Schwachstellen vorhanden

Implementierungshinweise

  1. Zufallszahlengenerierung: muss einen kryptographisch sicheren Zufallszahlengenerator verwenden
  2. Seitenkanalangriffe: die Implementierung muss Timing-Angriffe und Stromverbrauchsanalysen verhindern
  3. Fehlerbehandlung: Fehlermeldungen von Entschlüsselungs- und Verifikationsoperationen sollten einheitlich sein, um Informationslecks zu vermeiden
  4. Padding-Oracle-Angriff: RSAES-PKCS1-v1_5 ist anfällig für Bleichenbacher-Angriffe, bei der Implementierung ist besondere Vorsicht erforderlich

Hash-Funktionen

  • Zu vermeiden: MD5, SHA-1 (bereits gebrochen)
  • Empfohlen: SHA-256, SHA-384, SHA-512

Schlüsselverwendung

  • Einzelner Zweck: ein RSA-Schlüsselpaar sollte nur für ein Schema verwendet werden (Verschlüsselung oder Signatur, nicht mischen)
  • Schlüsselrotation: Schlüssel regelmäßig aktualisieren
  • Schutz des privaten Schlüssels: der private Schlüssel sollte verschlüsselt gespeichert werden, die Verwendung eines Hardware-Sicherheitsmoduls (HSM) ist Best Practice

Bekannte Angriffe und Verteidigungen

  • Angriff mit gewähltem Chiffretext (Chosen Ciphertext Attack): RSAES-OAEP bietet Schutz
  • Angriff mit gewählter Nachricht (Chosen Message Attack): RSASSA-PSS bietet Schutz
  • Bleichenbacher-Angriff: betrifft RSAES-PKCS1-v1_5
  • Timing-Angriff: Vorsicht bei der Verwendung von Algorithmen mit konstanter Zeit und CRT-Beschleunigung erforderlich

Siehe die Diskussion in Abschnitt 6 bezüglich der Vermeidung der Verwendung desselben Schlüsselpaars in mehreren Schemata.