Zum Hauptinhalt springen

10. Sicherheitsbetrachtungen

Sicherheitsaspekte werden in diesem Dokument an verschiedenen Stellen behandelt.

Zentrale Sicherheitsaspekte

Schlüssellänge

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

  • 2048 Bit: derzeitige Mindestempfehlung
  • 3072 Bit: für Anwendungen mit hohem Schutzbedarf empfohlen
  • 4096 Bit: für langfristige Schlüssel oder besonders hohe Sicherheitsanforderungen

Auswahl des Verfahrens

  • RSAES-OAEP: ein Verschlüsselungsverfahren, das neue Anwendungen unterstützen MÜSSEN (REQUIRED)
  • RSASSA-PSS: ein Signaturverfahren, dessen Einsatz für neue Anwendungen EMPFOHLEN wird (RECOMMENDED)
  • PKCS1-v1_5: nur aus Kompatibilitätsgründen beibehalten; bekannte Schwächen sind vorhanden

Hinweise zur Implementierung

  1. Zufallszahlenerzeugung: Es MUSS ein kryptografisch sicherer Zufallszahlengenerator verwendet werden.
  2. Seitenkanalangriffe: Implementierungen SOLLTEN Timing-Angriffe und Leistungsanalyse verhindern.
  3. Fehlerbehandlung: Fehlermeldungen bei Entschlüsselungs- und Prüfvorgängen SOLLTEN vereinheitlicht werden, damit keine Informationen preisgegeben werden.
  4. Padding-Oracle-Angriffe: RSAES-PKCS1-v1_5 ist für Bleichenbacher-Angriffe anfällig; bei der Implementierung ist besondere Vorsicht erforderlich.

Hash-Funktionen

  • Nicht verwenden: MD5, SHA-1 (gebrochen)
  • Empfohlen: SHA-256, SHA-384, SHA-512

Schlüsselverwendung

  • Einzelzweck: Ein RSA-Schlüsselpaar SOLLTE nur für ein Verfahren verwendet werden, entweder Verschlüsselung oder Signatur, nicht für beides.
  • Schlüsselrotation: Schlüssel regelmäßig austauschen.
  • Schutz privater Schlüssel: Private Schlüssel SOLLTEN verschlüsselt gespeichert werden; der Einsatz eines Hardware-Sicherheitsmoduls (HSM) ist eine bewährte Vorgehensweise.

Bekannte Angriffe und Gegenmaßnahmen

  • Chosen-Ciphertext-Angriff: RSAES-OAEP bietet Schutz.
  • Chosen-Message-Angriff: RSASSA-PSS bietet Schutz.
  • Bleichenbacher-Angriff: Betrifft RSAES-PKCS1-v1_5.
  • Timing-Angriffe: Bei Algorithmen mit konstanter Laufzeit und bei CRT-Beschleunigung ist Vorsicht geboten.

Siehe Abschnitt 6 zur Vermeidung der Verwendung desselben Schlüsselpaars in mehreren Verfahren.