Aller au contenu
uencoder

AES

AES (Advanced Encryption Standard) est un chiffrement par blocs symétrique établi par NIST en 2001, prenant en charge les clés de 128/192/256 bits, standard de facto du chiffrement moderne.

Objectif

Remplacer DES (clé trop courte) par un schéma de chiffrement symétrique sûr, efficace et adapté à l'accélération matérielle.

Mécanisme

Exécute plusieurs rondes de transformation sur des blocs de 128 bits : SubBytes (substitution S-box), ShiftRows (décalage de lignes), MixColumns (mixage de colonnes), AddRoundKey (XOR avec clé de ronde). Le nombre de rondes dépend de la longueur de clé (10/12/14). L'expansion de clé génère les clés de ronde.

Cas d’usage

  • Chiffrement de données TLS
  • Chiffrement de fichiers et disques (LUKS, FileVault)
  • Tunnels VPN (IPsec/IKE)
  • Chiffrement de champs de base de données

Exemples

  • entrée
    key=256bit, data="hello"
    Output
    ciphertext in 16-byte blocks

    Requires a mode of operation and an IV

Erreurs courantes

Using ECB mode makes identical plaintext blocks produce identical ciphertext blocks
Use GCM, or CBC with a random IV

Termes associés

Outils associés

References