Encodeur et décodeur Base64
Encodez du texte ou un fichier en Base64, ou décodez.
- Entièrement gratuitSans compte, sans quota quotidien, sans offre payante.
- Rien n'est envoyéLes fichiers sont traités sur votre appareil et n'atteignent jamais un serveur.
- Aucune contrepartieSans filigrane, sans réduction imposée, sans limite de taille.
- Changements consignésChaque correction et chaque nouvel outil sont notés sur la page des nouveautés.
Qu'est-ce que le Base64 et quand l'utiliser
Le Base64 est une façon de représenter des données binaires quelconques à l'aide de 64 caractères ASCII imprimables : A–Z, a–z, 0–9, plus et barre oblique, avec = comme remplissage. Chaque groupe de 3 octets en entrée devient 4 caractères en sortie, si bien que les données encodées sont environ 33 % plus volumineuses que l'original. Il existe parce que de nombreux canaux ont été conçus pour ne transporter que du texte : pièces jointes des e-mails (MIME), charges utiles JSON et XML, en-têtes d'authentification HTTP Basic, jetons JWT et data URL qui intègrent une image directement dans du HTML ou du CSS. Le Base64 est un encodage, pas un chiffrement : n'importe qui peut le décoder, ne l'utilisez donc jamais pour cacher des secrets.
La variante URL-safe (RFC 4648 §5) remplace + par - et / par _ et omet généralement le remplissage = afin que le résultat puisse être placé dans des URL, des noms de fichiers et des cookies sans échappement. Les JWT utilisent cette forme. Le décodeur de cette page accepte les deux variantes et tolère l'absence de remplissage, vous pouvez donc coller directement un segment de JWT.
Comment utiliser cet outil
Saisissez ou collez du texte : il est encodé au fur et à mesure. Le texte est traité en UTF-8, si bien que les caractères chinois, les emojis et tout autre caractère Unicode font l'aller-retour correctement — un bug courant des implémentations naïves qui appellent btoa() directement. Cochez URL-safe pour obtenir l'alphabet -/_ sans remplissage. Cliquez sur Fichier pour choisir n'importe quel fichier : images, PDF, polices ou archives sont lus localement et encodés ; pour les images, la sortie est une data URL complète que vous pouvez coller telle quelle dans un <img src> ou un arrière-plan CSS.
Pour décoder, passez en mode Décoder et collez du Base64 (une data URL complète fonctionne aussi). Si le résultat est du texte UTF-8 valide, il s'affiche dans la zone de sortie ; s'il est binaire, l'outil détecte les formats courants (PNG, JPEG, GIF, WebP, PDF, ZIP), prévisualise les images directement et vous permet de télécharger le fichier décodé. Inverser renvoie la sortie dans l'entrée pour vérifier un aller-retour en un clic.
Confidentialité et limites
Les fichiers ne quittent jamais votre ordinateur. Ils sont lus avec l'API File du navigateur, encodés en mémoire et affichés ; rien n'est envoyé. Comme tout s'exécute côté client, la limite pratique est la mémoire de votre appareil : des fichiers de plusieurs dizaines de mégaoctets fonctionnent sans problème, même si la zone de texte de sortie devient lente à faire défiler. Pour les très gros fichiers, téléchargez le résultat au lieu de le copier.
Contexte : un monde fait uniquement de texte
Le Base64 est né des contraintes des débuts de l'e-mail. SMTP a été conçu pour du texte ASCII 7 bits : joindre un fichier binaire imposait donc de le traduire d'abord en caractères imprimables ; uuencode le faisait dans les années 1980, et la norme MIME (RFC 2045, 1996) a défini l'alphabet Base64 encore utilisé aujourd'hui. La RFC 4648 (2006) a ensuite rassemblé les variantes : Base64 standard, forme sûre pour les URL et noms de fichiers, et Base32/Base16. Le rapport 3 octets pour 4 caractères explique pourquoi les données encodées font exactement 4/3 de la taille d'origine plus le remplissage — un coût qui comptait à l'époque des modems et qui compte encore pour les images intégrées dans le CSS.
Où on l'utilise
Les pièces jointes des e-mails sont toujours du Base64 en coulisses. Les data URL intègrent de petites images et des polices directement dans le HTML et le CSS pour économiser une requête — compressez l'image d'abord, car le Base64 ajoute 33 % à la taille que vous lui fournissez. L'authentification HTTP Basic envoie nom:motdepasse en Base64 (non chiffré — utilisez toujours HTTPS). Les jetons JWT sont trois segments Base64 URL-safe reliés par des points ; l'en-tête et la charge utile se décodent en JSON. Les Secrets Kubernetes, les politiques IAM du cloud, les URL encodées en pourcentage qui transportent des valeurs Base64, les empreintes SHA-256 des attributs Subresource Integrity, les assertions SAML, les certificats PEM (le bloc entre les lignes BEGIN et END) et les champs binaires des API JSON l'utilisent tous, parce que ces systèmes ne savent transporter que du texte. Quand vous rencontrez une longue chaîne se terminant par = ou ne contenant que des lettres, des chiffres, + et /, il s'agit presque certainement de Base64, et la coller ici est le moyen le plus rapide de découvrir ce qu'elle contient.
Questions fréquentes
Le Base64 est-il sécurisé ?
Non. C'est un encodage réversible, pas un chiffrement. N'importe qui peut le décoder instantanément. Utilisez-le pour le transport et l'intégration, jamais pour cacher des données.
Pourquoi mon texte décodé est-il illisible ?
L'original n'était probablement pas du texte UTF-8, ou il s'agissait de données binaires. Cet outil décode en UTF-8 et bascule sur un téléchargement de fichier quand les octets ne forment pas du texte valide.
Qu'est-ce qu'une data URL ?
Une URL de la forme data:image/png;base64,... qui intègre le contenu du fichier directement. Les navigateurs l'affichent tel quel, ce qui est pratique pour de petites icônes en HTML/CSS ou dans des e-mails.
Pourquoi la sortie encodée se termine-t-elle par des signes = ?
Le remplissage porte la longueur à un multiple de 4. Il est obligatoire en Base64 standard mais facultatif dans la variante URL-safe ; le décodeur de cette page accepte l'entrée avec ou sans.
Puis-je décoder un JWT avec cet outil ?
Oui pour l'en-tête et la charge utile : collez le segment situé entre les points. Notez que le segment de signature est binaire et ne peut pas être lu comme du texte.