Aller au contenu
uencoder

Nonce

Un nonce (number used once) est une valeur employée une seule fois lors du chiffrement ; similaire à un IV, il privilégie l'unicité sur l'aléatoire, courant dans les chiffrements de flux et l'AEAD.

Objectif

Garantir que chaque chiffrement sous la même clé produise un flux de clés différent, empêchant les attaques par two-time pad.

Mécanisme

Un nonce doit être unique (jamais répété) pendant la durée de vie de la clé. Il peut être un compteur (déterministe) ou une valeur aléatoire. CTR/GCM/ChaCha20 utilisent des nonces pour générer des flux de clés ; le nonce de 96 bits est le plus courant en GCM. Réutiliser un nonce entraîne une défaillance de sécurité catastrophique.

Cas d’usage

  • Chiffrement de messages AES-GCM
  • Chiffrement ChaCha20-Poly1305
  • Numéros de séquence des enregistrements TLS
  • Compteurs de nonce de WireGuard

Exemples

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

    Deterministic and unique

Erreurs courantes

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

Termes associés

Outils associés

References