Aller au contenu principal
Cryptographie20 février 2026• 10 min de lecture

Chiffrement AES-256-GCM : guide du développeur

Comprendre le chiffrement AES-256-GCM, son fonctionnement et pourquoi il est la référence pour la protection des données côté client. Guide technique complet avec exemples de code.

Chiffrez des fichiers avec notre chiffreur AES-256-GCM. Vos données restent dans votre navigateur.

Qu'est-ce que AES-256-GCM ?

AES-256-GCM est un moyen de chiffrer des données pour que seul quelqu'un disposant du mot de passe puisse les lire. Il est spécifié dans les NIST FIPS 197 et SP 800-38D, et c'est ce que la plupart des connexions TLS utilisent aujourd'hui.

Le « 256 » signifie qu'il utilise une clé de 256 bits : 2^256 clés possibles, soit environ 1,2×10^77. Parcourir cet espace n'est pas une attaque réaliste — deviner votre mot de passe l'est.

La partie « GCM » ajoute ce qu'on appelle le « chiffrement authentifié ». Cela signifie que vous pouvez détecter si quelqu'un a altéré les données chiffrées.

Comment fonctionne le chiffrement

Pensez au chiffrement comme à un coffre-fort. Vous y placez vos données, le verrouillez avec un mot de passe, et seule une personne disposant de ce mot de passe peut l'ouvrir.

La magie opère par les mathématiques. Votre mot de passe est étiré en une clé de chiffrement robuste grâce à un processus appelé PBKDF2. Cela rend même les mots de passe faibles beaucoup plus forts.

Ensuite, AES brouille vos données avec cette clé. Le résultat ressemble à du bruit aléatoire. Sans le mot de passe, il est mathématiquement impossible de déchiffrer.

Quand utiliser le chiffrement AES

  • Fichiers sensibles – Déclarations fiscales, dossiers médicaux, documents juridiques
  • Avant le stockage cloud – Chiffrez avant d'envoyer sur Dropbox ou Drive
  • Pièces jointes e-mail – Protégez les fichiers envoyés par e-mail
  • Clés USB – Chiffrez les fichiers sur un stockage portable

Exemples d'implémentation AES-256-GCM

Voici comment implémenter le chiffrement AES-256-GCM dans différents langages. Les trois exemples utilisent un IV de 96 bits (12 octets) : GCM est défini pour d'autres longueurs, mais NIST SP 800-38D recommande 96 bits, et un IV répété avec la même clé casse complètement GCM.

L'exemple de code source ci-dessous utilise l'API Web Crypto du navigateur ; copiez-le et adaptez-le à votre projet.

Node.js (module crypto)

const crypto = require('crypto');
// Générer une clé aléatoire de 256 bits
const key = crypto.randomBytes(32);
// IV de 96 bits (12 octets) — la longueur recommandée par NIST SP 800-38D pour GCM
const iv = crypto.randomBytes(12);
// Chiffrer
const cipher = crypto.createCipheriv('aes-256-gcm', key, iv);
let encrypted = cipher.update('Message secret', 'utf8', 'hex');
encrypted += cipher.final('hex');
const authTag = cipher.getAuthTag();
console.log('Chiffré :', encrypted);
console.log('Tag GCM :', authTag.toString('hex'));

Python (bibliothèque cryptography)

from cryptography.hazmat.primitives.ciphers.aead import AESGCM
import os
# Generate a random 256-bit key
key = AESGCM.generate_key(bit_length=256)
aesgcm = AESGCM(key)
# Generate nonce (IV)
nonce = os.urandom(12)
# Encrypt
plaintext = b'Secret message'
ciphertext = aesgcm.encrypt(nonce, plaintext, None)
print(f'Key: {key.hex()}')
print(f'Nonce: {nonce.hex()}')
print(f'Ciphertext: {ciphertext.hex()}')

Exemple de code source : JavaScript (API Web Crypto)

async function encryptData(plaintext, password) {
// Derive key from password using PBKDF2
const encoder = new TextEncoder();
const passwordKey = await crypto.subtle.importKey(
'raw', encoder.encode(password), 'PBKDF2', false, ['deriveKey']
);
const salt = crypto.getRandomValues(new Uint8Array(16));
const key = await crypto.subtle.deriveKey(
{ name: 'PBKDF2', salt, iterations: 100000, hash: 'SHA-256' },
passwordKey, { name: 'AES-GCM', length: 256 }, false, ['encrypt']
);
// Encrypt
const iv = crypto.getRandomValues(new Uint8Array(12));
const encrypted = await crypto.subtle.encrypt(
{ name: 'AES-GCM', iv }, key, encoder.encode(plaintext)
);
return { encrypted, iv, salt };
}

AES-256-GCM vs AES-256-CBC vs ChaCha20

L'une des questions les plus fréquentes chez les développeurs est de savoir comment AES-256-GCM se situe face aux autres modes avant de s'engager sur une implémentation. Le tableau ci-dessous montre les différences qui comptent réellement pour le chiffrement côté client :

Pour un nouveau projet, AES-256-GCM est le choix par défaut le plus sûr, car il authentifie le texte chiffré dans la même opération. Pour le détail complet de la deuxième option, lisez notre comparaison AES-GCM vs ChaCha20-Poly1305.

PropriétéAES-256-GCMAES-256-CBCChaCha20-Poly1305
Chiffrement + authentificationOui, le tag GCM est intégréNon, il faut une couche HMAC séparéeOui, le tag Poly1305 est intégré
Accélération matérielleExcellente sur x86 (AES-NI)BonneLogicielle uniquement, très portable
Vitesse sur mobileBonneBonneSouvent la plus rapide sur les téléphones ARM
Détection de modificationImmédiate, l'authentification échoueSeulement si vous ajoutez et vérifiez un HMACImmédiate
Meilleur choix par défaut ?Oui, pour les nouvelles applicationsUniquement avec une couche HMAC correcteBonne alternative sur les appareils peu puissants

Comment chiffrer un fichier avec AES-256-GCM (pas à pas)

Vous n'avez pas besoin d'un terminal pour utiliser AES-256-GCM. Le chemin le plus rapide est notre chiffreur AES-256-GCM dans le navigateur, qui garde chaque octet sur votre appareil. Le même déroulé fonctionne pour du texte brut :

Un chiffrement fort mérite un mot de passe fort. Générez-en un avec notre générateur de mots de passe, et utilisez un hachage SHA-256 pour vérifier que le fichier n'a pas été corrompu avant de le déchiffrer.

  1. Ouvrez le chiffreur AES-256-GCM et basculez sur l'onglet texte ou fichier.
  2. Collez votre texte ou déposez le fichier à protéger.
  3. Saisissez un mot de passe d'au moins 16 caractères, ou générez-en un.
  4. Cliquez sur Chiffrer. L'outil dérive une clé de 256 bits avec PBKDF2 (100 000 itérations) et stocke le sel, l'IV et le tag d'authentification à côté du texte chiffré. Les nombres d'itérations ne sont pas comparables d'un outil à l'autre : la recommandation actuelle de l'OWASP pour PBKDF2-HMAC-SHA256 est de 600 000 itérations, alors que ce site utilise 100 000.
  5. Téléchargez le fichier chiffré et conservez le mot de passe à un autre endroit que le fichier.
  6. Pour récupérer vos données, rouvrez l’outil, passez en mode déchiffrement et saisissez à nouveau le mot de passe. Si le tag ne se vérifie pas, le fichier ou le mot de passe a été modifié.

Conseils sur les mots de passe

Votre chiffrement ne vaut que ce que vaut votre mot de passe. Voici comment le rendre efficace :

Utilisez une phrase de passe – Quatre ou cinq mots aléatoires sont plus faciles à retenir et plus difficiles à casser que des caractères aléatoires.

Faites-la longue – 16 caractères minimum. Plus c'est long, mieux c'est.

Ne la réutilisez pas – Ce mot de passe protège tout ce que vous chiffrez avec. Gardez-le unique.

Stockez-la en sécurité – Utilisez un gestionnaire de mots de passe. Notez-la et rangez-la dans un coffre. Ne la perdez jamais.

Ce qu'il ne peut pas faire

Le chiffrement AES protège vos données au repos. Il ne les protège pas pendant que vous les utilisez.

Si votre ordinateur contient un logiciel malveillant, il peut lire les données déchiffrées pendant votre travail.

Le chiffrement ne cache pas non plus que vous avez des données chiffrées. Quelqu'un peut voir que vous avez un fichier, simplement il ne peut pas le lire.

Questions fréquentes

Q.Les ordinateurs quantiques casseront-ils le chiffrement AES-256 ?

A.Les ordinateurs quantiques pourraient menacer AES-256 à terme, mais pas dans un avenir prévisible. Les experts estiment que casser AES-256 exigerait des millions de qubits stables. Les ordinateurs quantiques actuels (en 2026) n'ont que des centaines à des milliers de qubits avec des taux d'erreur élevés. Même quand ils progresseront, doubler la longueur de clé vers AES-512 (si nécessaire) offrirait une protection.

Q.AES-256 a-t-il une porte dérobée gouvernementale ?

A.Non. AES est une norme publique issue d'un concours ouvert et examinée par des cryptographes du monde entier. L'algorithme et ses implémentations sont publiquement documentés et scrutés. Des chercheurs en sécurité indépendants, des universitaires et des gouvernements utilisent et font confiance à AES. Une porte dérobée aurait été découverte depuis longtemps compte tenu de cette surveillance intense.

Q.Que se passe-t-il si j'oublie mon mot de passe de chiffrement ?

A.Vos données restent chiffrées et inaccessibles pour toujours. Il n'y a ni réinitialisation de mot de passe, ni mécanisme de récupération, ni service client qui puisse aider. C'est la nature fondamentale du chiffrement fort – la sécurité qui protège vos données des attaquants empêche aussi la récupération si vous perdez la clé. Conservez toujours les mots de passe dans un gestionnaire sécurisé ou notez-les et rangez-les dans un coffre physique.

Q.Que signifie GCM et pourquoi est-ce important ?

A.GCM signifie Galois/Counter Mode. Il fournit à la fois le chiffrement (confidentialité) et l'authentification (intégrité) en une seule opération. GCM cache donc vos données et détecte aussi toute altération. Les modes plus anciens comme CBC ne fournissent que le chiffrement sans authentification, ce qui les rend vulnérables à certaines attaques. Utilisez toujours un chiffrement authentifié comme GCM pour les nouvelles applications.

Q.À quel point mon mot de passe doit-il être fort ?

A.Utilisez au moins 16 caractères avec un mélange de majuscules, minuscules, chiffres et symboles. Une phrase de passe de 5-6 mots aléatoires (comme « correct-horse-battery-staple-cloud ») est encore meilleure – plus facile à retenir et plus difficile à casser. Le mot de passe est étiré avec PBKDF2 à plus de 100 000 itérations, mais un mot de passe faible peut toujours être deviné. Ne réutilisez jamais les mots de passe de chiffrement.

Q.Y a-t-il une limite de taille de fichier à chiffrer ?

A.Le chiffrement dans le navigateur est limité par la mémoire disponible. Les fichiers jusqu'à plusieurs centaines de Mo fonctionnent bien. Pour les très gros fichiers (Go et plus), envisagez des outils en ligne de commande comme OpenSSL ou GPG. Notre outil traite les fichiers entièrement dans votre navigateur – rien n'est envoyé aux serveurs – la limite est donc la RAM de votre appareil, pas des contraintes serveur.

Q.Le chiffrement dans le navigateur est-il vraiment sûr ?

A.Oui, lorsqu'il est correctement implémenté. Notre outil utilise l'API Web Crypto, une fonctionnalité native du navigateur qui emploie les mêmes bibliothèques cryptographiques que les systèmes d'exploitation. Le chiffrement se déroule dans le bac à sable sécurisé de votre navigateur, pas sur nos serveurs. Vous pouvez le vérifier en consultant l'onglet Réseau des outils de développement – aucune donnée n'est envoyée pendant le chiffrement.

Q.Comment partager des fichiers chiffrés avec d'autres ?

A.Envoyez le fichier chiffré par n'importe quel canal (e-mail, stockage cloud, messagerie). Partagez le mot de passe par un canal différent et sécurisé – idéalement en personne, via un message chiffré ou le partage d'un gestionnaire de mots de passe. N'envoyez jamais le mot de passe et le fichier ensemble par le même canal. Le destinataire peut déchiffrer avec le même outil ou tout logiciel compatible AES-256-GCM.

Q.Comment déchiffrer des données AES-256-GCM localement ?

A.Utilisez le même mot de passe, le même sel et le même nonce que ceux qui ont produit le texte chiffré. Le déchiffreur dérive la clé avec les mêmes paramètres PBKDF2 et vérifie le tag d'authentification GCM avant de publier le texte clair. Comme tout s'exécute dans votre navigateur, le résultat déchiffré est affiché sur votre appareil et n'est jamais envoyé à un serveur. Conservez le sel et le nonce avec le texte chiffré : ils n'ont pas besoin d'être secrets, mais doivent correspondre.

Références

Cet article s'appuie sur les normes industrielles et les bonnes pratiques de sources autoritatives :

  • NIST FIPS 197-upd1 – Advanced Encryption Standard (AES) : https://doi.org/10.6028/NIST.FIPS.197-upd1
  • NIST SP 800-38D – Recommandation pour les modes de fonctionnement des chiffrements par blocs : Galois/Counter Mode (GCM) et GMAC : https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38d.pdf
  • RFC 5084 – Utilisation du chiffrement authentifié AES-CCM et AES-GCM : https://www.rfc-editor.org/rfc/rfc5084
  • Aide-mémoire OWASP sur le stockage cryptographique : https://cheatsheetseries.owasp.org/cheatsheets/Cryptographic_Storage_Cheat_Sheet.html

Chiffrez vos données localement

Chiffrez du texte ou des fichiers avec AES-256-GCM dans votre navigateur — sans envoi, sans compte.

Conclusion

AES-256-GCM est le choix par défaut pour le chiffrement authentifié côté client. Chiffrez du texte ou des fichiers localement avec le chiffreur AES-256-GCM.

AES-256-GCMchiffrementcryptographieprotection des donnéessécurité