Zum Inhalt springen
uencoder

Nonce

Ein Nonce (number used once) ist ein beim Verschlüsseln nur einmal verwendeter Wert; ähnlich einem IV, aber mit Betonung der Eindeutigkeit statt des Zufalls, üblich bei Stromchiffren und AEAD.

Zweck

Stellt sicher, dass jede Verschlüsselung unter demselben Schlüssel einen anderen Schlüsselstrom erzeugt, und verhindert Two-Time-Pad-Angriffe.

Mechanismus

Ein Nonce muss innerhalb der Lebensdauer des Schlüssels eindeutig (nie wiederholt) sein. Er kann ein Zähler (deterministisch) oder ein Zufallswert sein. CTR/GCM/ChaCha20 erzeugen aus Nonces Schlüsselströme; der 96-Bit-Nonce ist in GCM am verbreitetsten. Nonce-Wiederverwendung verursacht katastrophale Sicherheitsfehler.

Anwendungsfälle

  • AES-GCM-Nachrichtenverschlüsselung
  • Verschlüsselung mit ChaCha20-Poly1305
  • TLS-Datensatz-Sequenznummern
  • WireGuard-Nonce-Zähler

Beispiele

  • Eingabe
    nonce=0,1,2... (counter)
    Output
    a unique nonce per message

    Deterministic and unique

Häufige Fehler

Nonce reuse replays the keystream and breaks authentication
Use a monotonic counter or a long enough random nonce

Verwandte Begriffe

Verwandte Tools

References