AES Encrypt / Decrypt
Understand AES Encrypt / Decrypt
Chiffre et déchiffre du texte dans votre navigateur avec AES sous un mot de passe, au choix en AES-256-GCM (par défaut), AES-128-GCM, AES-256-CBC, AES-128-CBC ou AES-256-CTR.
How it works
Votre mot de passe n'est pas la clé. PBKDF2 l'étire en une clé au moyen de 100 000 itérations de HMAC-SHA-256 sur un sel aléatoire de 16 octets généré à chaque fois, si bien qu'un attaquant paie ce coût à chaque essai et qu'une table précalculée pour un sel ne vaut rien contre un autre. Un IV aléatoire est tiré à chaque chiffrement — 12 octets pour GCM, 16 pour CBC et CTR — et c'est pourquoi chiffrer deux fois le même texte ne donne jamais le même texte chiffré. La sortie est algorithm:salt:iv:ciphertext en base64, et porte tous les paramètres nécessaires au déchiffrement à l'exception du mot de passe lui-même.
When to use it
- Chiffrer un court secret avant qu'il ne transite par un ticket, un fil de discussion ou un document partagé.
- Produire un vecteur de test pour vérifier qu'une implémentation AES côté serveur s'accorde avec WebCrypto.
- Montrer la différence pratique entre un mode authentifié et un mode qui ne l'est pas.
- Relire quelque chose que vous avez chiffré ici plus tôt et conservé sous forme de texte.
- Contrôler l'interopérabilité avec un système hérité qui n'accepte qu'AES-CBC.
Watch out for
- GCM détecte les altérations ; CBC et CTR non. Avec GCM, un seul octet de texte chiffré modifié fait échouer le déchiffrement d'emblée. Avec CTR, un attaquant qui inverse un bit du texte chiffré inverse le même bit du texte clair, et CBC est le mode à l'origine de la classe d'attaques par oracle de remplissage. Ne choisissez CBC ou CTR que pour l'interopérabilité, et ajoutez alors un MAC distinct sur le texte chiffré.
- Le mot de passe est le plafond. 100 000 itérations de PBKDF2 ralentissent la recherche d'autant, mais ne peuvent pas sauver un mot de passe faible — un mot du dictionnaire est trouvé quoi qu'il arrive, quelle que soit la taille de la clé. La robustesse de cette sortie est celle de ce que vous avez saisi.
- Ne réutilisez jamais un IV ou un bloc de compteur avec la même clé. Cet outil génère un sel et un IV neufs à chaque chiffrement, il est donc sûr tel qu'il est utilisé, mais la règle compte dès que vous réimplémentez le format : un nonce GCM répété révèle le XOR des deux textes clairs et peut exposer la clé d'authentification elle-même.
- AES-256 contre AES-128 n'est pas la décision qui compte. Aucune des deux tailles de clé n'est cassée en pratique ; ce sont le mode et le mot de passe qui dominent la sécurité réelle. Ne préférez pas AES-256-CBC à AES-128-GCM au motif que le nombre est plus grand.
Not the right tool for: Envoyer un secret à quelqu'un qui ne partage pas déjà votre mot de passe. Il s'agit de chiffrement symétrique, sans échange de clés, sans identité et sans confidentialité persistante — pour cela, utilisez age, PGP ou la gestion des clés de destinataire que votre plateforme fournit déjà.
Frequently Asked Questions
Quel algorithme AES choisir ?
AES-256-GCM est la valeur par défaut et la bonne réponse pour presque tout nouvel usage. GCM est authentifié : altérer le texte chiffré fait échouer le déchiffrement au lieu de renvoyer du charabia. Ne choisissez CBC ou CTR que si un système avec lequel vous devez interopérer l'exige — ni l'un ni l'autre ne détecte une altération par lui-même.
AES-128 est-il moins sûr qu'AES-256 ?
Les deux sont considérés comme sûrs ; aucune attaque pratique ne casse l'une ou l'autre taille de clé. AES-256 offre une marge plus grande face aux progrès à venir et reste le choix conventionnel pour des données à longue durée de vie, tandis qu'AES-128 est marginalement plus rapide. Le mode retenu (GCM plutôt que CBC) pèse bien plus sur la sécurité réelle que la taille de la clé.
Qu'est-ce que PBKDF2 et pourquoi l'utilise-t-on ?
PBKDF2 (Password-Based Key Derivation Function 2) transforme un mot de passe saisi par un humain en clé cryptographique, au moyen de 100 000 itérations de HMAC-SHA256 avec un sel aléatoire. Ces itérations rendent les attaques par force brute 100 000 fois plus lentes qu'un hachage unique du mot de passe.
Puis-je déchiffrer cette sortie dans un autre langage ?
Oui. La sortie est algorithm:salt:iv:ciphertext, avec tous les paramètres nécessaires au déchiffrement. Reproduisez les mêmes réglages PBKDF2 (100 000 itérations, SHA-256, le sel intégré) et le chiffrement nommé dans n'importe quel langage, et le texte chiffré se déchiffre à l'identique.
How to Use AES Encrypt / Decrypt
- Paste or type your input in the input area above.
- The tool processes your input automatically or click Run.
- Copy or download the result using the action buttons.
- Use Ctrl+Enter to run quickly from the keyboard.