AES-GCM

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche

Portail > Algorithmes

AES-GCM (Galois/Counter Mode) est le mode AEAD le plus répandu : il combine le chiffrement AES en mode compteur et une authentification par GHASH. C'est le choix par défaut en TLS sur matériel disposant d'AES-NI.

Construction

  • Chiffrement : AES en mode CTR produit le keystream XORé au clair.
  • Authentification : GHASH, une fonction sur le corps GF(2128), calcule un MAC sur le chiffré et les données associées (AAD). La combinaison forme GMAC.
  • Sortie : chiffré + tag d'authentification (128 bits).

Paramètres

Paramètre Valeur
Clé 128 ou 256 bits (AES-128/256-GCM)
Nonce 96 bits recommandés
Tag 128 bits (ne pas tronquer excessivement)
AAD Optionnelles, authentifiées non chiffrées

Performance

Sur les processeurs modernes, AES-GCM est très rapide grâce à AES-NI (chiffrement) et PCLMULQDQ (multiplication sans retenue pour GHASH). C'est ce qui en fait le mode AEAD privilégié côté serveur.

Le danger : réutilisation de nonce

AES-GCM est catastrophiquement sensible à la réutilisation d'un nonce sous une même clé :

  • deux messages avec le même nonce révèlent le XOR des clairs (keystream identique) ;
  • pire, la réutilisation permet de récupérer la clé d'authentification GHASH et donc de forger des messages valides.

L'unicité du nonce est donc une exigence de sécurité de premier ordre.

Limites d'usage

  • Nombre de messages/volume borné par clé et par nonce (pour rester sous les seuils de collision).
  • Si l'unicité du nonce ne peut être garantie (systèmes distribués, redémarrages), préférer AES-GCM-SIV (résistant à la réutilisation de nonce) ou XChaCha20-Poly1305.

Usage

Standard en TLS 1.2 et 1.3 (suites AES_128_GCM, AES_256_GCM), IPsec, stockage chiffré. Identifiants openssl : aes-128-gcm, aes-256-gcm.

Points clés à retenir

  • AEAD = AES-CTR (chiffrement) + GHASH/GMAC (authentification), tag 128 bits.
  • Nonce 96 bits recommandé ; unicité impérative (sinon fuite des clairs ET forge possible).
  • Très rapide avec AES-NI + PCLMULQDQ → standard côté serveur.
  • Unicité du nonce incertaine ⇒ AES-GCM-SIV ou XChaCha20-Poly1305.

Voir aussi

Cryptographie symétrique — Portail
Fondamentaux Principe · Bloc et flot · Modes opératoires · Padding · IV et nonces
Intégrité / auth. MAC et HMAC · AEAD
Gestion des clés Aléa / CSPRNG · KDF · Échange de clés · Stockage / rotation
Algorithmes AES · ChaCha20/Salsa20 · DES / 3DES · Blowfish et Twofish · RC4 · Camellia, ARIA et SM4 · AES-GCM · ChaCha20-Poly1305 · Hachage
Applications Données au repos · En transit / hybride
Sécurité avancée Attaques · Conformité · Post-quantique