Grundlagen und Anwendungen der Kryptografie

Den Hashwert SHA-256(K ‖ m) der Verkettung aus geheimem Schlüssel K und Nachricht m als Tag zur Erkennung von Manipulationen zu verwenden, gilt als gefährlich. Was ist der richtige Grund?

  1. AWer Tag und Länge der Eingabe kennt, kann ohne Kenntnis von K das Tag einer Nachricht berechnen, an die hinter m weitere Daten angehängt wurden
  2. BEs wurde ein effizientes Verfahren gefunden, aus der Ausgabe von SHA-256 nur den am Anfang der Eingabe stehenden Schlüssel K zurückzurechnen
  3. CSteht der Schlüssel K vor der Nachricht, wird die Eingabe länger, und bei SHA-256 lassen sich leichter Kollisionen finden
Antwort und Erläuterung anzeigen

Antwort: A. Wer Tag und Länge der Eingabe kennt, kann ohne Kenntnis von K das Tag einer Nachricht berechnen, an die hinter m weitere Daten angehängt wurden

Bei einer Hashfunktion mit Merkle–Damgård-Konstruktion wie SHA-256 ist der ausgegebene Hashwert genau der innere Zustand nach Verarbeitung des letzten Blocks. Ein Angreifer kann daher das Tag als inneren Zustand übernehmen, die Berechnung fortsetzen und ohne Kenntnis von K den Hashwert einer Nachricht berechnen, bei der an K ‖ m ein Padding fester Form und beliebige Daten angehängt sind (Length-Extension-Angriff). HMAC verwendet zwei aus dem Schlüssel abgeleitete Werte und hasht den inneren Hashwert noch einmal zusammen mit dem Schlüssel; diese Struktur verhindert den Angriff. SHA-3 ist aufgrund seiner Struktur gegen diesen Angriff immun, daher ist mit KMAC auch ein Verfahren standardisiert, das den Schlüssel einfach voranstellt.

Dieses Thema üben Zur Themenseite

Weitere Fragen zu Grundlagen und Anwendungen der Kryptografie

  1. Es gelte 1 GiB = 2³⁰ Byte und 1 EiB = 2⁶⁰ Byte. Eine Blockchiffre mit 64 Bit Blocklänge (etwa 3DES) wird im CBC-Modus verwendet, um mit einem einzigen Schlüssel große Datenmengen zu verschlüsseln. Die Geheimtextblöcke werden als zufällige 64-Bit-Werte betrachtet. Welcher Richtwert für die Datenmenge ist richtig, ab der die Wahrscheinlichkeit, dass nach dem Geburtstagsparadoxon ein Paar gleicher Geheimtextblöcke auftritt, nicht mehr vernachlässigbar ist?
  2. Welcher Grund ist angemessen dafür, dass Protokolle wie TLS 1.3 das im ECDHE-Schlüsselaustausch gewonnene gemeinsame Geheimnis nicht direkt als Schlüssel verwenden, sondern die Schlüssel mit einer Schlüsselableitungsfunktion (KDF) wie HKDF erzeugen?
  3. Die Funktionsweise von RSA wird mit kleinen Zahlen nachvollzogen. Aus den Primzahlen p = 5 und q = 11 wird n = pq gebildet, und der öffentliche Exponent ist e = 3. Mit φ(n) = (p − 1)(q − 1): Welcher private Exponent d (0 < d < φ(n)) erfüllt e × d ≡ 1 (mod φ(n))?
  4. Bei RSA sei der öffentliche Schlüssel n = 55, e = 3. Wie lautet der Geheimtext c, wenn der Klartext m = 7 mit c = m^e mod n verschlüsselt wird?
  5. Was ist das Problem, wenn Lehrbuch-RSA (der Klartext m wird unverändert als c = m^e mod n verschlüsselt) ohne Padding in realer Kommunikation verwendet wird?