Le décodage Base64 est le processus inverse de l'encodage Base64 : il convertit une chaîne ASCII encodée en Base64 en données binaires ou texte originales. Chaque 4 caractères Base64 se décodent en 3 octets de données originales. Le décodeur recherche chaque caractère dans l'alphabet Base64, reconstruit les groupes originaux de 6 bits et les réassemble en octets de 8 bits.
Les données encodées en Base64 sont reconnaissables par l'utilisation de lettres majuscules et minuscules, de chiffres, et de +/ (standard) ou -_ (sécurisé pour les URL), se terminant souvent par un ou deux caractères de remplissage =. Elles apparaissent fréquemment dans les tokens JWT, les pièces jointes d'e-mails, les data URI, les réponses d'API et les fichiers de configuration — partout où des données binaires ou structurées doivent être intégrées dans un contexte textuel.
Pourquoi utiliser cet outil ?
Ce décodeur gère Base64 standard et URL-safe, corrige automatiquement le rembourrage manquant, et décode entièrement dans votre navigateur sans envoyer de données aux serveurs.
⚡
Correction automatique du rembourrage
De nombreuses sources produisent du Base64 sans les caractères = finaux. Cet outil calcule et ajoute automatiquement le rembourrage manquant avant le décodage, évitant les exceptions InvalidCharacterError.
🛡️
Les deux variantes prises en charge
Détecte et gère automatiquement Base64 standard (+/) et Base64 URL-safe (-_), afin que vous puissiez coller des tokens de n'importe quelle source sans conversion manuelle.
🔒
Entièrement côté client
Le décodage se fait localement dans votre navigateur avec l'API native atob. Vos données — qui peuvent contenir des secrets ou du contenu sensible — ne quittent jamais votre appareil.
🌐
Sortie Unicode
Décode correctement le texte encodé UTF-8 en Unicode complet, y compris les caractères multi-octets, les emoji et les scripts CJK.
Comment utiliser ce décodeur Base64 en ligne
Aucun compte, aucun téléchargement, aucune installation. Collez votre chaîne Base64 dans le champ de saisie et le résultat décodé apparaît instantanément. Tout s'exécute dans votre navigateur — vos données ne quittent jamais votre appareil.
1
Collez votre chaîne Base64
Copiez n'importe quelle chaîne encodée en Base64 depuis votre source — un JWT, une réponse d'API, un en-tête de pièce jointe d'e-mail ou un fichier de configuration — et collez-la dans le champ de saisie. Les variantes standard et URL-safe sont détectées automatiquement.
2
Détection automatique et correction
Le décodeur identifie si votre entrée utilise le Base64 standard (+/) ou URL-safe (-_) et corrige automatiquement le rembourrage = manquant. Inutile de normaliser manuellement la chaîne avant le décodage.
3
Inspecter la sortie
Le texte décodé apparaît dans le champ de sortie. Si les données d'origine étaient du texte UTF-8, elles s'affichent sous forme de caractères lisibles. Les données binaires sont affichées telles quelles. Un message d'erreur apparaît si l'entrée contient des caractères invalides qui ne peuvent pas être décodés.
4
Copier ou utiliser le résultat
Cliquez sur Copier pour récupérer la sortie décodée, ou utilisez-la directement dans votre flux de travail. Besoin de ré-encoder le résultat ? Passez à l'outil Encodeur Base64 en un seul clic.
Comment fonctionne le décodage
Chaque caractère Base64 correspond à une valeur de 6 bits (0–63). Quatre caractères consécutifs fournissent 24 bits, qui se décodent en 3 octets de données originales. L'exemple ci-dessous montre comment « TWFu » se décode en « Man » :
Exemple "Man" → TWFu → "Man"
Car.
Index
6 bits
T
19
010011
W
22
010110
F
5
000101
u
46
101110
Les quatre groupes de 6 bits (010011 010110 000101 101110) sont concaténés en 24 bits, puis divisés en trois octets de 8 bits : 01001101 (M=77), 01100001 (a=97), 01101110 (n=110).
Comprendre le rembourrage
L'encodage Base64 groupe les octets d'entrée par paquets de 3. Lorsque la longueur d'entrée n'est pas divisible par 3, des caractères de rembourrage (=) sont ajoutés pour compléter le dernier groupe. Lors du décodage, ces caractères = sont supprimés et le décodeur sait qu'il faut ignorer les bits zéro supplémentaires ajoutés lors de l'encodage.
Original
Encodé
Règle de rembourrage
A
QQ==
1 byte → 2 padding chars
AB
QUI=
2 bytes → 1 padding char
ABC
QUJD
3 bytes → no padding needed
Cas d'utilisation courants
Inspecter les charges utiles JWT
Les tokens JWT sont composés de trois segments encodés en Base64 URL-safe. Décoder le deuxième segment (charge utile) révèle les claims : identifiant utilisateur, rôles, heure d'expiration et autres métadonnées — sans nécessiter de clé de signature.
Lire les réponses d'API
Les APIs REST retournent fréquemment des données binaires (contenus de fichiers, miniatures, matériel cryptographique) encodées en Base64 dans des réponses JSON. Décodez le champ pour lire les données originales.
Décoder le contenu d'e-mail
Les corps et pièces jointes d'e-mail MIME sont encodés en Base64. Les décoder révèle le contenu texte original ou permet de reconstruire les pièces jointes binaires.
Extraire les secrets Kubernetes
Kubernetes stocke les valeurs secrètes en Base64 dans les manifestes YAML. Les décoder révèle les mots de passe, tokens et clés réels stockés dans le cluster — utile pour le débogage et l'audit.
Déboguer la configuration
Les variables d'environnement et les secrets de pipeline CI/CD sont souvent encodés en Base64 pour un stockage sûr dans des fichiers de configuration YAML ou JSON. Décodez-les pour vérifier les valeurs réelles lors du débogage.
Décoder les URIs de données
Les URIs de données intègrent des ressources encodées en Base64 directement dans HTML/CSS. Décodez la portion Base64 pour extraire l'image originale, la police ou autre ressource intégrée.
Erreurs courantes
Voici les causes les plus fréquentes d'erreurs de décodage Base64 en pratique :
✕
Rembourrage manquant
Les chaînes Base64 doivent avoir une longueur multiple de 4. De nombreuses APIs et bibliothèques JWT suppriment les = finaux pour la compacité. Rajoutez le rembourrage : le nombre de = manquants est (4 - longueur % 4) % 4.
✕
Caractères URL-safe non convertis
Base64 URL-safe utilise - et _ au lieu de + et /. Si vous passez du Base64 URL-safe directement à atob() ou base64.b64decode(), cela échouera. Remplacez toujours - → + et _ → / avant de décoder avec des bibliothèques standard.
✕
Espaces blancs et sauts de ligne
Les certificats PEM, les données MIME et le Base64 copié-collé contiennent souvent des sauts de ligne tous les 76 caractères. Supprimez tous les espaces blancs avant de décoder pour éviter InvalidCharacterError.
✕
Sortie binaire vs texte
Base64 peut encoder n'importe quelle donnée binaire, pas seulement du texte. Si les données originales étaient un fichier binaire (image, PDF), les décoder comme texte UTF-8 produira du charabia. Utilisez la méthode de sortie binaire appropriée pour les charges non textuelles.
Exemples de code
Comment décoder une chaîne Base64 dans les langages et environnements populaires :
JavaScript (browser)
// Standard Base64
const decoded = decodeURIComponent(escape(atob(encoded)))
// URL-safe Base64 (restore padding first)
function decodeUrlSafe(str) {
const padded = str.replace(/-/g, '+').replace(/_/g, '/')
const pad = padded.length % 4
return decodeURIComponent(escape(atob(padded + '='.repeat(pad ? 4 - pad : 0))))
}
Plusieurs outils peuvent décoder le Base64, mais ils diffèrent en termes de confidentialité, de vitesse et de commodité.
Cet outil
Basé sur le navigateur, instantané, privé. Aucune donnée envoyée à un serveur. Gère le Base64 standard et URL-safe, corrige automatiquement le rembourrage manquant et fonctionne hors ligne.
CLI (base64 -d)
Rapide pour les scripts et les fichiers volumineux. Nécessite un terminal. Requiert une normalisation manuelle pour les entrées URL-safe (-_ → +/).
Outils polyvalents
Curl, Postman, les DevTools du navigateur et les convertisseurs en ligne peuvent tous décoder le Base64. La commodité varie ; certains envoient des données à des serveurs distants.
Foire aux questions
Pourquoi le décodage me donne-t-il des caractères illisibles ?
La cause la plus courante est le décodage de données binaires (images, fichiers compressés) en texte UTF-8 — les octets binaires ne forment souvent pas de séquences Unicode valides. Une autre cause est le décodage de Base64 URL-safe (-_) avec un décodeur standard qui attend +/. Vérifiez quelle variante utilise votre source.
Qu'est-ce qu'InvalidCharacterError ?
Cette erreur de navigateur de atob() se produit quand l'entrée contient des caractères hors de l'alphabet Base64, comme des caractères URL-safe (- ou _), des espaces blancs, des sauts de ligne ou des caractères non ASCII. Supprimez les espaces blancs et convertissez les caractères URL-safe avant d'appeler atob().
Comment savoir si mon Base64 est URL-safe ou standard ?
Recherchez les caractères - ou _ : s'ils sont présents, c'est du Base64 URL-safe. Base64 standard utilise + et /. Base64 URL-safe omet également généralement les caractères de rembourrage =. Les tokens JWT utilisent toujours Base64 URL-safe.
Le décodage Base64 peut-il échouer silencieusement ?
Oui. Certains décodeurs ignorent silencieusement les caractères invalides au lieu de lever une erreur, produisant une sortie incorrecte. Validez toujours que vos données décodées correspondent au format attendu (JSON, en-tête d'image, etc.).
Y a-t-il une limite de taille pour le décodage Base64 ?
Cet outil basé sur navigateur peut gérer des chaînes Base64 allant jusqu'à quelques mégaoctets avant que l'interface ne devienne lente. Pour des fichiers très volumineux, utilisez un outil CLI ou un décodeur côté serveur.
Pourquoi Base64 se termine-t-il par un ou deux signes = ?
= est le caractère de rembourrage. Base64 encode 3 octets en 4 caractères. Si la longueur des données originales n'est pas un multiple de 3, un ou deux caractères = sont ajoutés pour que la longueur totale de sortie soit un multiple de 4. Un = signifie 2 octets d'entrée dans le dernier groupe ; deux == signifie 1 octet d'entrée.
Puis-je décoder des fichiers binaires, des images ou des PDFs ?
Oui, mais la sortie sera des données binaires brutes qui peuvent ne pas s'afficher correctement sous forme de texte. Pour le contenu binaire, il est préférable d'utiliser l'URI de données directement dans une balise '<'img'>' ou '<'a'>', ou de sauvegarder les octets décodés dans un fichier à l'aide d'un script.
Y a-t-il une limite de taille pour le décodage ?
Cet outil fonctionne entièrement dans le navigateur sans limite côté serveur. Les limites pratiques dépendent de la mémoire de votre navigateur. Les très grandes chaînes Base64 (au-delà de quelques Mo) sont mieux traitées avec un outil CLI comme base64 -d (Linux/macOS) ou certutil -decode (Windows).