Skip to content

Outil de déchiffrement AES — compatible OpenSSL et CryptoJS

Déchiffrez de l'AES en ligne — GCM/CBC/CTR, phrase secrète ou clé brute, détection automatique du format OpenSSL et CryptoJS « U2FsdGVkX1 ». 100 % dans le navigateur, les clés ne quittent jamais la page.

Sans pistage Fonctionne dans le navigateur Gratuit
Tout s'exécute dans votre navigateur — votre clé et vos données ne quittent jamais cette page.
Recommandé
Taille de clé
Type de clé
Options avancées
Texte en clair
Besoin de la page de chiffrement dédiée ?
Vérifié pour l'exactitude cryptographique par rapport à la FIPS 197, la NIST SP 800-38D, OWASP, et la spécification W3C Web Crypto — Équipe Sécurité Go Tools · 16 juil. 2026

Comment fonctionne le déchiffrement AES

Le déchiffrement AES est l'inverse exact du chiffrement : la même clé symétrique qui a brouillé les données exécute les tours du chiffrement en sens inverse pour récupérer les octets d'origine. Comme l'AES est symétrique, il n'existe pas de « clé de déchiffrement » séparée — vous devez fournir la clé ou la phrase secrète, le mode et l'IV identiques à ceux utilisés pour chiffrer. Obtenez les bons paramètres et le texte en clair revient octet pour octet ; trompez-vous sur un seul et vous obtenez une erreur ou des données incohérentes.

Pour déchiffrer correctement, quatre éléments doivent correspondre exactement au chiffrement : la clé (ou la phrase secrète plus ses réglages de dérivation de clé), le mode opératoire (GCM, CBC ou CTR), l'IV ou le nonce, et — pour GCM — le tag d'authentification. Si l'un d'eux manque, le résultat est soit une erreur nette (un échec d'authentification GCM, un échec de padding CBC), soit des données incohérentes silencieuses (CTR, ou CBC avec le mauvais IV). Cet outil extrait pour vous le sel, l'IV et le tag du texte chiffré quand ils y sont intégrés, et diagnostique l'échec quand quelque chose ne correspond pas.

Le texte chiffré se présente sous quelques formes différentes, et cet outil en comprend trois. Le format 1 est notre disposition autonome par phrase secrète : un sel de 16 octets, puis l'IV, puis le texte chiffré (avec le tag GCM ajouté à la fin en mode GCM) — déchiffrez-le avec la seule phrase secrète. Le format 2 est la disposition en clé brute : l'IV préfixé au texte chiffré, ou un texte chiffré « nu » où vous fournissez l'IV séparément. Le format 3 est la disposition OpenSSL, produite par la commande openssl enc et par CryptoJS.

Ce format OpenSSL mérite d'être reconnu au premier coup d'œil. Il commence par les 8 octets ASCII Salted__, suivis d'un sel de 8 octets puis du texte chiffré, et quand le tout est encodé en Base64, ces premiers octets ressortent toujours comme le préfixe U2FsdGVkX1. Donc si un texte chiffré qu'on vous a remis commence par U2FsdGVkX1, il a presque certainement été produit par openssl enc ou un appel CryptoJS AES.encrypt(text, passphrase). CryptoJS dérive sa clé avec l'ancienne fonction EVP_BytesToKey utilisant une seule passe MD5, tandis qu'openssl moderne utilise PBKDF2 — c'est pourquoi choisir la bonne fonction de dérivation de clé est l'enjeu central pour déchiffrer ces textes. Si votre entrée est en Base64 et que vous voulez simplement voir les octets bruts, notre décodeur Base64 vous les montrera. Pour créer un texte chiffré dans ces formats, utilisez l'outil de chiffrement AES.

// AES-256-GCM decrypt with a passphrase (PBKDF2-HMAC-SHA256, 600,000 iterations).
// Identical code runs in the browser and in Node.js 20+ via Web Crypto.
async function aesGcmDecrypt(base64, passphrase) {
  const enc = new TextEncoder();
  const packed = Uint8Array.from(atob(base64), (c) => c.charCodeAt(0));
  const salt = packed.slice(0, 16), iv = packed.slice(16, 28); // salt(16) | iv(12)
  const ct = packed.slice(28);                                 // ciphertext + tag
  const baseKey = await crypto.subtle.importKey(
    'raw', enc.encode(passphrase), 'PBKDF2', false, ['deriveKey']);
  const key = await crypto.subtle.deriveKey(
    { name: 'PBKDF2', salt, iterations: 600000, hash: 'SHA-256' },
    baseKey, { name: 'AES-GCM', length: 256 }, false, ['decrypt']);
  const plain = await crypto.subtle.decrypt(
    { name: 'AES-GCM', iv }, key, ct);        // throws if the tag fails
  return new TextDecoder().decode(plain);     // recovered plaintext
}

Fonctionnalités clés

Détecte automatiquement la sortie OpenSSL et CryptoJS

Collez un texte chiffré commençant par U2FsdGVkX1 et l'outil reconnaît le format Salted__ et propose un basculement en un clic vers le flux de déchiffrement correspondant, si bien que vous ne luttez jamais contre une erreur sans issue.

Trois fonctions de dérivation de clé

Déchiffrez à travers toutes les générations du format openssl enc : PBKDF2 avec un nombre d'itérations personnalisé, EVP_BytesToKey avec SHA-256, ou l'ancienne passe unique MD5 qu'utilise CryptoJS.

Explique pourquoi le déchiffrement a échoué

Au lieu d'une erreur générique, vous obtenez un diagnostic : mauvaise clé contre mauvais IV, un échec d'authentification GCM, une erreur de padding CBC, une pollution du base64, ou « ceci ressemble à un texte chiffré de l'ère MD5, essayez EVP-MD5 ».

Commande openssl équivalente affichée en direct

Voyez la commande exacte openssl enc -d qui reproduit le déchiffrement en ligne de commande, nombre d'itérations inclus, pour que vous puissiez vérifier le résultat en dehors du navigateur.

Phrase secrète ou clé brute, GCM/CBC/CTR

Gère le texte chiffré autonome par phrase secrète, le texte chiffré en clé brute avec un IV préfixé ou fourni séparément, et les trois modes Web Crypto.

100 % dans votre navigateur

Le texte chiffré et les clés sont traités localement avec l'API Web Crypto et ne sont jamais envoyés — vous pouvez le vérifier avec l'onglet Réseau ou en passant hors ligne.

Exemples de déchiffrement AES

Déchiffrer un texte chiffré autonome par phrase secrète (GCM)

sel(16) ‖ iv(12) ‖ texte chiffré ‖ tag(16), Base64 — depuis la page de chiffrement
The quick brown fox jumps over the lazy dog.

Ceci est l'inverse de l'exemple GCM de la page de chiffrement. Prenez la chaîne Base64 autonome qu'elle a produite pour la phrase secrète hunter2, collez-la ici avec Mode GCM, Taille de clé 256, Type de clé Phrase secrète et la même phrase secrète hunter2, et la phrase d'origine revient. Vous ne saisissez pas de sel ni d'IV séparément — l'outil lit le sel de 16 octets et l'IV de 12 octets au début de la chaîne, dérive la clé avec PBKDF2-HMAC-SHA256 (600 000 itérations), et vérifie le tag GCM de 128 bits ajouté à la fin avant de renvoyer le moindre texte. Cliquez sur Charger l'exemple sur la page de chiffrement pour générer une nouvelle chaîne, puis déchiffrez-la ici.

Déchiffrer une vraie sortie OpenSSL / PBKDF2

U2FsdGVkX18AESIzRFVmd1PBwxIFQpF+VgIhTK0aDHQ=
Attack at dawn!

Ceci est une vraie sortie d'openssl enc. Collez-la, passez en mode OpenSSL (Mode CBC, Type de clé Phrase secrète), saisissez la phrase secrète correct-horse, choisissez la fonction de dérivation de clé PBKDF2, et réglez les itérations à 10 000 — le texte en clair est Attack at dawn!. Le préfixe U2FsdGVkX1 indique à l'outil qu'il s'agissait du format Salted__, et le sel de 8 octets se trouve juste après cet en-tête à l'intérieur du Base64. Vous pouvez reproduire le déchiffrement exact en ligne de commande : echo 'U2FsdGVkX18AESIzRFVmd1PBwxIFQpF+VgIhTK0aDHQ=' | openssl enc -d -aes-256-cbc -pbkdf2 -iter 10000 -pass pass:correct-horse -base64 -A. Si un texte chiffré similaire échoue avec PBKDF2, il a probablement été produit par CryptoJS — passez le KDF à EVP-MD5 et réessayez. Cliquez sur Charger l'exemple OpenSSL pour remplir ces valeurs automatiquement.

Comment déchiffrer un texte chiffré AES

  1. 1

    Collez le texte chiffré

    Déposez votre texte chiffré en Base64 ou en Hex dans le champ de saisie. S'il commence par U2FsdGVkX1, l'outil le signale comme un format OpenSSL/CryptoJS et propose de basculer vers le bon mode.

  2. 2

    Définissez le format et le mode

    Pour une chaîne autonome provenant de cet outil, gardez le mode Phrase secrète et le mode GCM/CBC/CTR correspondant. Pour une sortie OpenSSL/CryptoJS, acceptez le basculement (CBC + phrase secrète). Pour des données en clé brute, choisissez Clé brute et l'encodage, et fournissez l'IV s'il n'est pas préfixé.

  3. 3

    Choisissez la fonction de dérivation de clé

    En mode OpenSSL, choisissez PBKDF2 (et son nombre d'itérations), EVP-SHA256, ou EVP-MD5 pour correspondre à la façon dont la clé a été dérivée. EVP-MD5 est celle qu'utilise CryptoJS.

  4. 4

    Saisissez la phrase secrète ou la clé

    Tapez la phrase secrète exacte, ou collez la clé brute exacte en hexadécimal ou en Base64. Le texte en clair apparaît à droite dès que tout correspond.

  5. 5

    Lisez le diagnostic en cas d'échec

    Si le déchiffrement échoue, le panneau nomme la cause probable — mauvais IV, mauvaise clé, erreur de padding, pollution du Base64, ou incompatibilité de KDF — pour que vous puissiez ajuster un réglage à la fois plutôt que de deviner.

Pourquoi le déchiffrement AES échoue — et comment y remédier

Échec de l'authentification GCM

GCM refuse de renvoyer le texte en clair si le tag ne se vérifie pas. La cause est une mauvaise phrase secrète ou clé, le mauvais mode, un mauvais IV, ou un texte chiffré altéré/tronqué — GCM ne peut pas dire lequel. Revérifiez chacun par rapport à la façon dont les données ont été chiffrées.

✗ Incorrect
mode: CBC        // but the data was encrypted with GCM
=> Authentication failed
✓ Correct
mode: GCM, same passphrase and key size as encryption
=> plaintext

CBC : un premier bloc brouillé signifie un mauvais IV

Dans CBC, l'IV n'affecte que le premier bloc de 16 octets. Si le bloc un est incohérent mais que le reste se décode proprement, votre IV est incorrect ; si tout est incohérent, la clé est incorrecte.

✗ Incorrect
iv: 00000000000000000000000000000000   (wrong IV)
=> first block corrupt, rest readable
✓ Correct
iv: (the exact IV used to encrypt)
=> Attack at dawn!

Erreur de padding CBC / PKCS#7

Une erreur de padding signifie presque toujours que la clé est incorrecte ; elle peut aussi signifier que le texte chiffré a été corrompu, tronqué, ou n'a pas été rembourré en PKCS#7. Confirmez que tout le texte chiffré a été copié et que la phrase secrète et le KDF correspondent.

✗ Incorrect
passphrase: hunter3   // one character off
=> padding error
✓ Correct
passphrase: hunter2   // exact
=> plaintext

Pollution du Base64 (ou du hex)

Des retours à la ligne, des espaces, ou des guillemets typographiques collés avec le texte chiffré cassent le décodage. L'outil retire automatiquement les espaces, mais des caractères manquants ou en trop font toujours échouer le décodage.

✗ Incorrect
“U2FsdGVkX1...”   (curly quotes and trailing junk copied in)
✓ Correct
U2FsdGVkX18AESIzRFVmd1PBwxIFQpF+VgIhTK0aDHQ=   (clean Base64)

U2FsdGVkX1 détecté mais le mode OpenSSL est désactivé

Si l'entrée commence par U2FsdGVkX1, vous avez affaire à une sortie Salted__ d'OpenSSL/CryptoJS, qui ne se déchiffrera pas comme une chaîne phrase secrète normale. L'outil affiche une bannière ; cliquez sur Passer en mode OpenSSL et choisissez le KDF.

✗ Incorrect
OpenSSL compatible: off
input: U2FsdGVkX1...
=> cannot parse
✓ Correct
OpenSSL compatible: on, KDF chosen
=> plaintext

Incompatibilité de KDF (le piège CryptoJS)

Un texte chiffré qui échoue avec PBKDF2 ou SHA-256 mais se déchiffre avec EVP-MD5 a été produit par CryptoJS ou openssl 1.0.2 et antérieur. En ligne de commande, ceux-ci nécessitent -md md5.

✗ Incorrect
KDF: PBKDF2       // CryptoJS ciphertext
=> padding error
✓ Correct
KDF: EVP-MD5      // matches CryptoJS
=> plaintext

Ce que vous pouvez faire avec le déchiffrement AES

Déchiffrer une sortie d'openssl enc
Lisez un bloc Salted__ produit par openssl enc -aes-256-cbc sans passer par un terminal : collez le Base64, saisissez la phrase secrète, choisissez le KDF, et obtenez votre texte en clair.
Déchiffrer un texte chiffré CryptoJS
Récupérez des données depuis une ancienne application qui utilisait CryptoJS AES.encrypt(text, passphrase). Sélectionnez EVP-MD5 pour correspondre à sa dérivation de clé MD5 en une seule passe — l'étape que la plupart des gens manquent.
Déboguer un déchiffrement qui échoue sans cesse
Quand votre propre code n'arrive pas à déchiffrer quelque chose, collez-le ici pour isoler si le problème vient de la clé, de l'IV, du mode, de l'encodage, ou du KDF, à l'aide du panneau de diagnostic.
Vérifier un aller-retour de chiffrement
Confirmez qu'un texte chiffré provenant de la page de chiffrement AES ou de votre application se déchiffre exactement en les octets d'origine.
Comprendre un texte chiffré inconnu
Identifiez un format à partir de sa forme — un préfixe U2FsdGVkX1, ou un préfixe de longueur fixe qui ressemble à un IV — et déterminez comment il a été produit avant d'essayer une clé.

Fonctionnement interne et formats du déchiffrement AES

Déchiffrement GCM — authentifié
GCM recalcule le tag de 128 bits sur le texte chiffré et le compare avant de renvoyer le moindre texte en clair ; une non-correspondance déclenche une exception au lieu de divulguer des données corrompues. Il utilise l'IV de 96 bits qui était préfixé. Un échec GCM signifie que la clé, le mode, l'IV ou le texte chiffré est incorrect — le chiffrement ne peut pas vous dire lequel, seulement que l'authentification a échoué.
Déchiffrement CBC — surveillez le premier bloc et le padding
CBC a deux signatures d'échec distinctes. Si seul le premier bloc de 16 octets est brouillé et que le reste semble correct, l'IV était incorrect. Si tous les blocs sont incohérents, la clé est incorrecte. Une erreur de padding PKCS#7 signifie généralement que la clé est incorrecte, ou que le texte chiffré a été corrompu ou tronqué. CBC n'a pas de tag (contrairement à une construction authentifiée comme un HMAC), donc une mauvaise clé peut même se déchiffrer en octets d'apparence plausible.
Déchiffrement CTR — silencieux en cas d'erreur
CTR ne déclenche jamais d'exception : une mauvaise clé produit simplement des données incohérentes, ce qui se manifeste généralement par une erreur « UTF-8 non valide » une fois les octets décodés en texte. Faites correspondre exactement le compteur/IV. Comme il n'y a aucun contrôle d'intégrité, traitez avec suspicion toute sortie CTR que vous n'avez pas authentifiée séparément.
Dispositions de texte chiffré (F1 / F2 / F3)
Le format 1 (phrase secrète) est sel(16) puis IV puis texte chiffré, avec le tag GCM de 16 octets ajouté à la fin en mode GCM. Le format 2 (clé brute) est IV puis texte chiffré, ou texte chiffré nu avec un IV fourni séparément. Le format 3 (OpenSSL) est l'en-tête ASCII Salted__ puis un sel de 8 octets puis le texte chiffré. Savoir quelle disposition vous avez indique à l'outil où se trouvent le sel et l'IV, et une clé brute elle-même devrait provenir d'un CSPRNG — voir le générateur de clé secrète.
Dérivation de clé : faire correspondre ce qui a chiffré les données
Pour un texte chiffré autonome par phrase secrète, cet outil utilise PBKDF2-HMAC-SHA256 à 600 000 itérations. Pour un texte chiffré OpenSSL/CryptoJS, vous devez sélectionner le KDF qui a été utilisé : PBKDF2 (la valeur par défaut d'openssl -pbkdf2 est 10 000 itérations — réglez votre nombre exact), EVP_BytesToKey avec SHA-256 (openssl 1.1+ sans -pbkdf2), ou EVP_BytesToKey avec MD5 et une seule passe (CryptoJS et openssl 1.0.2 et antérieur). Le bug classique du « ça ne se déchiffre pas » est un texte chiffré CryptoJS ou ancien-openssl essayé avec SHA-256 — passez à EVP-MD5 et ça fonctionne.

Bonnes pratiques de déchiffrement AES

Commencez par identifier le format
Avant de toucher aux réglages, regardez le texte chiffré. Un préfixe U2FsdGVkX1 signifie OpenSSL/CryptoJS ; une chaîne autonome provenant de cet outil est au format phrase secrète ; un bloc nu a généralement besoin d'une clé brute et d'un IV séparé.
Faites correspondre exactement la fonction de dérivation de clé
Pour un texte chiffré OpenSSL/CryptoJS, le KDF est aussi important que la phrase secrète. Si PBKDF2 échoue, essayez EVP-MD5 (CryptoJS, ancien openssl) ; le nombre d'itérations doit aussi correspondre, pas seulement l'algorithme.
Collez le texte chiffré proprement
Des retours à la ligne ou des espaces parasites issus de la copie peuvent corrompre le Base64. Cet outil retire les espaces, mais si le décodage échoue toujours, vérifiez la présence de guillemets typographiques, de caractères manquants, ou d'une copie tronquée. Notre outil Base64 peut vous aider à inspecter une chaîne suspecte.
Traitez honnêtement un résultat de mauvaise clé
Avec CTR ou CBC, une mauvaise clé peut produire des octets plutôt qu'une erreur. Si la sortie ressemble à des données incohérentes ou échoue au contrôle UTF-8, la clé ou l'IV est incorrect — ne faites pas confiance à une sortie d'apparence partielle.
N'envoyez jamais de texte chiffré secret ou de clés à un serveur
L'intérêt de déchiffrer dans le navigateur est que rien ne quitte la page. Évitez les outils qui envoient des données ; celui-ci utilise Web Crypto localement, et vous pouvez le vérifier avec l'onglet Réseau ou en passant hors ligne. L'AES-256 est robuste — approuvé CNSA 2.0 pour TOP SECRET — donc si vous n'arrivez pas à déchiffrer, le problème vient des paramètres, pas du chiffrement.

FAQ sur le déchiffrement AES

Peut-on déchiffrer l'AES sans la clé ?
Non — et méfiez-vous de quiconque prétend le contraire. L'AES n'a aucune faiblesse pratique connue, donc sans la clé ou la phrase secrète, la seule option est la force brute, et les chiffres rendent cela sans espoir : l'AES-256 compte 2^256 clés possibles, un espace si vaste que même un essai astronomiquement rapide mettrait bien plus longtemps que l'âge de l'univers pour en entamer une fraction. Il n'existe pas de récupération de type « mot de passe oublié » pour l'AES, ni de service légitime qui déchiffre pour vous un texte chiffré AES arbitraire. Si vous avez perdu la clé, les données sont perdues ; si vous l'avez, cet outil déchiffrera dans votre navigateur. Quand le déchiffrement échoue malgré la possession de la clé, le coupable est presque toujours le mauvais mode, le mauvais IV, ou la mauvaise fonction de dérivation de clé — pas un chiffrement cassé.
Comment déchiffrer une sortie d'openssl enc ?
Collez le texte chiffré en Base64 (il commence par U2FsdGVkX1) et acceptez la proposition de l'outil de passer en mode OpenSSL, ou activez manuellement le mode compatible OpenSSL avec Mode CBC et Type de clé Phrase secrète. Saisissez la phrase secrète, puis choisissez la fonction de dérivation de clé qu'a utilisée openssl : PBKDF2 si le fichier a été créé avec -pbkdf2 (réglez le même nombre d'itérations — la valeur par défaut est 10 000), ou EVP-SHA256 pour un fichier OpenSSL 1.1+ simple sans -pbkdf2. L'outil affiche la commande openssl enc -d exacte qu'il reproduit. Par exemple, echo 'U2FsdGVkX18AESIzRFVmd1PBwxIFQpF+VgIhTK0aDHQ=' | openssl enc -d -aes-256-cbc -pbkdf2 -iter 10000 -pass pass:correct-horse -base64 -A affiche Attack at dawn!.
Que signifie U2FsdGVkX1 au début d'un texte chiffré ?
C'est l'empreinte du format Salted__ d'OpenSSL. OpenSSL et CryptoJS préfixent leur texte chiffré avec les 8 octets ASCII Salted__ suivis d'un sel de 8 octets, et quand cela est encodé en Base64, les premiers octets ressortent toujours comme U2FsdGVkX1. Le voir vous indique deux choses : les données ont été produites par la commande openssl enc ou un appel CryptoJS AES.encrypt(text, passphrase), et la clé a été dérivée d'une phrase secrète — vous aurez donc besoin de la phrase secrète plus la bonne fonction de dérivation de clé, pas d'une clé brute. Collez-le et cet outil détecte le format automatiquement et propose de basculer vers le flux correspondant.
Comment déchiffrer un texte chiffré CryptoJS ?
AES.encrypt(text, passphrase) de CryptoJS utilise le format Salted__ d'OpenSSL, mais avec une clé dérivée par l'ancienne fonction EVP_BytesToKey utilisant MD5 et une seule itération. Collez donc le texte chiffré, passez en mode OpenSSL, et choisissez la fonction de dérivation de clé EVP-MD5 — c'est le réglage que presque tout le monde manque, et c'est pourquoi un texte chiffré CryptoJS semble « ne pas se déchiffrer » quand on l'essaie avec PBKDF2 ou SHA-256. Saisissez la même phrase secrète et votre texte en clair apparaît. En ligne de commande, le déchiffrement équivalent nécessite -md md5.
GCM ou CBC — pourquoi mon texte chiffré se déchiffre-t-il d'une façon et pas de l'autre ?
Le mode doit correspondre à la façon dont les données ont été chiffrées ; les deux ne sont pas interchangeables. GCM inclut un tag d'authentification de 128 bits et refusera de déchiffrer (échec d'authentification) si vous choisissez le mauvais mode, la mauvaise clé ou le mauvais IV. CBC n'a pas de tag, donc le choisir à tort peut produire silencieusement des données incohérentes ou une erreur de padding plutôt qu'un échec clair. Si l'authentification GCM échoue sans cesse, confirmez que les données sont bien en GCM ; si CBC donne des erreurs de padding, revérifiez la phrase secrète et la fonction de dérivation de clé. Le panneau de diagnostic de cet outil vous indique la cause la plus probable plutôt qu'une erreur générique.
Mon texte chiffré ou ma clé sont-ils envoyés quand je déchiffre ici ?
Non. Le déchiffrement s'exécute entièrement dans votre navigateur via l'API Web Crypto (crypto.subtle) — le même moteur audité que votre navigateur utilise pour HTTPS. Votre texte chiffré, votre phrase secrète et votre clé ne sont jamais envoyés où que ce soit ; vous pouvez observer l'onglet Réseau rester vide, ou couper votre connexion internet et déchiffrer hors ligne. Cette conception strictement locale est ce qui rend raisonnable de coller ici un texte chiffré sensible, bien que vous devriez tout de même éviter de manipuler des secrets de production dans n'importe quel outil en ligne.
Quelle est la différence entre une phrase secrète et une clé brute lors du déchiffrement ?
Cela détermine comment vous saisissez le secret. Si les données ont été chiffrées à partir d'une phrase secrète (y compris tout ce qui est au format U2FsdGVkX1), choisissez Phrase secrète et laissez l'outil dériver la clé avec le KDF et le sel correspondants. Si elles ont été chiffrées avec une clé exacte de 128/192/256 bits, choisissez Clé brute et collez ces octets en hexadécimal ou en Base64 — et vous devrez peut-être aussi fournir l'IV, soit préfixé au texte chiffré, soit saisi séparément. Essayer de déchiffrer des données chiffrées par phrase secrète avec une clé brute, ou l'inverse, est une raison courante d'échec du déchiffrement. Pour créer un texte chiffré sous l'une ou l'autre forme, utilisez l'outil de chiffrement AES.

Outil de chiffrement AES — GCM, CBC et CTR

Outils de sécurité

Chiffrement AES en ligne gratuit — AES-128/192/256, GCM/CBC/CTR, phrase secrète (PBKDF2) ou clé brute. 100 % dans votre navigateur ; rien n'est envoyé.

Générateur et vérificateur de hachage Bcrypt

Outils de sécurité

Générez et vérifiez des hachages bcrypt en ligne — coût ajustable, préfixes $2b$/$2a$/$2y$. 100 % dans votre navigateur ; mot de passe jamais envoyé.

Générateur HMAC & vérificateur de signature

Outils de sécurité

Générateur et vérificateur HMAC en ligne gratuit. Calculez HMAC-SHA256/SHA1/SHA384/SHA512 avec des clés en texte, hex ou Base64 et une sortie Hex/Base64/Base64URL. 100 % dans votre navigateur — les clés ne quittent jamais la page.

Décodeur JWT

Outils de sécurité

Décodez des jetons JWT en ligne avec notre décodeur JWT gratuit. Inspectez en-tête, charge utile, signature, expiration et revendications. 100 % navigateur — votre jeton ne quitte jamais votre appareil. Sans inscription ni suivi.

Encodeur & Générateur JWT

Outils de sécurité

Générateur & encodeur JWT gratuit en ligne. Construisez l'en-tête et la charge utile, signez avec HS256, RS256 ou ES256 instantanément. 100 % navigateur — votre secret et votre clé ne quittent jamais votre appareil.

Générateur de secret JWT gratuit — HS256/384/512

Outils de sécurité

Générez un secret JWT robuste pour HS256/384/512 — 100 % dans votre navigateur, jamais envoyé. base64url, base64 ou hex ; à copier pour .env.