Gratuit, sans inscription
Décoder et encoder en Base64
Le Base64 écrit n’importe quelle donnée avec 64 caractères sans risque : « Bonjour » devient Qm9uam91cg==. Collez du Base64 pour le décoder, ou tapez du texte pour l’encoder ; l’outil gère les accents et les emoji en UTF-8, la variante compatible URL des jetons, les lignes de 76 caractères des e-mails et les fichiers entiers transformés en data URL. Tout se passe dans votre navigateur : rien n’est envoyé à un serveur.
Mode d’emploi
- Choisissez encoder ou décoder. Dans l’onglet Texte, choisissez Encoder pour transformer du texte en Base64, ou Décoder pour lire une chaîne Base64. Pour les images et les documents, utilisez l’onglet Fichier.
- Collez ou tapez. Le résultat se met à jour pendant la saisie. Au décodage, les espaces et les retours à la ligne sont ignorés, et les deux alphabets, standard et URL, sont acceptés, avec ou sans remplissage.
- Copiez ou téléchargez. Copiez le résultat en un clic. Dans l’onglet Fichier, vous pouvez copier la data URL, la télécharger en fichier texte ou retransformer du Base64 collé en fichier d’origine.
Comment fonctionne le Base64
Les ordinateurs stockent les données en octets de 8 bits, mais de nombreux canaux, comme l’e-mail, les URL, le JSON ou les attributs HTML, ne transportent sans risque que du texte simple. Le Base64 résout le problème en prenant les octets 3 par 3 (24 bits) et en les découpant en 4 groupes de 6 bits. Chaque groupe de 6 bits est un nombre de 0 à 63 qui désigne un caractère d’un alphabet fixe : A–Z, a–z, 0–9, + et /.
Quand la donnée n’est pas un multiple de 3 octets, le dernier groupe est complété par des bits à zéro et les caractères manquants sont remplacés par =. C’est pourquoi « Man » s’encode en TWFu, « Ma » en TWE= et « M » en TQ==. Le schéma sous l’outil montre ce découpage bit par bit pour les trois premiers octets de votre saisie.
| Saisie | Octets | Base64 |
|---|---|---|
| Man | 3 | TWFu |
| Ma | 2 | TWE= |
| M | 1 | TQ== |
| é | 2 (c3 a9) | w6k= |
| € | 3 (e2 82 ac) | 4oKs |
Chaque groupe de 3 octets devient 4 caractères : le Base64 est donc environ un tiers plus volumineux que l’original. 30 000 octets deviennent 40 000 caractères, soit 33,3 % de plus. Le texte est d’abord converti en octets UTF-8 : c’est pourquoi un « é » occupe 2 octets et le signe euro 3 octets.
Où l’on utilise le Base64
- Pièces jointes des e-mails : le format MIME encode les fichiers en Base64 et coupe les lignes à 76 caractères. Activez « Lignes de 76 caractères » pour obtenir la même mise en forme.
- Data URL en HTML et CSS : une petite icône peut être intégrée sous la forme data:image/png;base64,…, ce qui évite une requête à la page. Utilisez l’onglet Fichier pour en créer une.
- Jetons web : un jeton JWT est formé de trois parties en base64url séparées par des points. L’en-tête {"alg":"HS256","typ":"JWT"} devient eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9. Décoder un jeton montre son contenu, mais vérifier sa signature nécessite la clé.
- Authentification HTTP Basic : l’en-tête « Authorization: Basic dXRpbGlzYXRldXI6bW90ZGVwYXNzZQ== » n’est que utilisateur:motdepasse en Base64 ; c’est pourquoi il ne doit circuler qu’en HTTPS.
- API et fichiers de configuration : les données binaires comme les certificats, les clés et les images sont souvent placées en Base64 dans du JSON ou du YAML.
Le Base64 n’est pas un chiffrement
Le Base64 est un encodage, pas un chiffrement : il n’y a pas de clé, et n’importe qui peut le décoder en une seconde, avec cet outil ou une ligne de code. Il ne cache rien. Un mot de passe, une clé d’API ou des données personnelles stockés en Base64 sont aussi exposés que du texte en clair.
Pour protéger des données, utilisez un vrai chiffrement (par exemple AES) et transmettez-les en HTTPS ; pour stocker des mots de passe, utilisez une fonction de hachage lente conçue pour cet usage. Le Base64 sert seulement à faire transiter des données dans des systèmes qui attendent du texte. Pour des valeurs aléatoires, comme un tirage au sort ou un échantillon de test, voyez le générateur de nombres aléatoires.
Cet outil décode dans votre navigateur : coller un jeton ici ne l’envoie nulle part. Traitez malgré tout les jetons et les clés de production comme des secrets.
Variantes : URL, remplissage et retours à la ligne
Les caractères + et / ont un sens particulier dans les adresses web et les noms de fichiers. La variante base64url les remplace par - et _ : les mêmes octets donnent PDw/Pz8+Pg== en Base64 standard et PDw_Pz8-Pg== en base64url. Le remplissage = est souvent supprimé lui aussi, car la longueur de la chaîne indique déjà où s’arrêtent les données.
Le décodeur accepte les deux alphabets, avec ou sans remplissage. Il signale une erreur précise quand un caractère est hors de l’alphabet (avec sa position), quand la longueur ne peut pas être valide ou quand un = apparaît au milieu de la chaîne. Les espaces et les retours à la ligne sont ignorés, comme l’exige MIME.
Exemples
Encoder un texte accentué
« Café crème » compte 10 caractères, mais 12 octets en UTF-8, car « é » et « è » en occupent 2 chacun. 12 = 4 × 3 : le résultat fait exactement 16 caractères, sans = final : Q2Fmw6kgY3LDqG1l.
Lire un en-tête Basic
Collez dXRpbGlzYXRldXI6bW90ZGVwYXNzZQ== dans Décoder et vous obtenez utilisateur:motdepasse. Les identifiants sont lisibles par quiconque voit l’en-tête.
Le signe euro
Le signe € est le point de code U+20AC ; en UTF-8, il occupe les 3 octets e2 82 ac, qui deviennent 4oKs.
Sources
- RFC 4648, « The Base16, Base32, and Base64 Data Encodings » (IETF, octobre 2006) : section 4 (alphabet Base64), section 5 (base64url), section 3.2 (remplissage), section 3.3 (caractères hors alphabet) et section 10 (vecteurs de test).
- RFC 2045, « Multipurpose Internet Mail Extensions (MIME) Part One » (IETF, 1996), section 6.8 : encodage de transfert Base64 en lignes de 76 caractères au plus.
- RFC 7519, « JSON Web Token (JWT) » (IETF, 2015) : usage du base64url sans remplissage.
Sources vérifiées le 22/10/2026. Les exemples de cette page sont calculés avec le même code que l’outil : les chaînes du texte correspondent toujours à ce qu’il produit.
Questions fréquentes
Comment décoder du Base64 ?
Le Base64 est-il un chiffrement ?
Pourquoi le Base64 se termine-t-il par = ou == ?
Pourquoi le Base64 est-il plus volumineux que l’original ?
Quelle différence entre Base64 et base64url ?
Pourquoi le message « caractère non valide » s’affiche-t-il ?
Mes fichiers sont-ils envoyés sur un serveur ?
Mis à jour le mercredi 14 octobre 2026