Zum Inhalt springen
uencoder

IV (Initialization Vector)

Ein Initialisierungsvektor (IV) ist eine Eingabe, die Zufälligkeit in Blockchiffre-Modi einspeist, sodass derselbe Klartext bei jeder Verschlüsselung unterschiedliche Chiffre erzeugt.

Zweck

Er verhindert das Leaken von Mustern identischer Klartexte und bietet semantische Sicherheit.

Mechanismus

Die IV-Länge entspricht meist der Blockgröße (z. B. 128 Bit bei AES). CBC verlangt einen unvorhersagbaren (zufälligen) IV; CTR/GCM verlangen Eindeutigkeit (ein Zähler genügt). Der IV muss nicht geheim sein und wird mit dem Chiffrat übertragen. In GCM heißt der IV oft Nonce.

Anwendungsfälle

  • Zufällige IVs für AES-CBC
  • Eindeutige Nonces für AES-GCM
  • IV-Speicherung bei Festplattenverschlüsselung
  • Chiffrat-Identifikation und Deduplizierung

Beispiele

  • Eingabe
    AES-CBC IV=random 128 bits
    Output
    different result on every encryption

    The IV is transmitted with the ciphertext

Häufige Fehler

A fixed or predictable IV enables chosen-plaintext attacks
Use a random IV for CBC and a unique nonce for CTR/GCM

Verwandte Begriffe

Verwandte Tools

References