Mode d’emploi : Encodeur / décodeur Base64
- Saisissez votre texte dans le champ Texte brut : le résultat encodé apparaît aussitôt dans le champ Base64 à droite.
- À l'inverse, collez une valeur dans le champ Base64 : le texte d'origine s'affiche à gauche.
- Pour une image ou un PDF, déposez le fichier dans la zone du bas : l'outil génère la data URI et la chaîne Base64 correspondantes.
- Si le Base64 contient une image ou un fichier, le bouton Enregistrer le Base64 en fichier permet de retrouver le fichier d'origine.
Qu'est-ce que l'encodage Base64 ?
Le Base64 permet de représenter des données binaires (photos, fichiers) ou des caractères accentués à l'aide de 64 caractères seulement : lettres majuscules et minuscules, chiffres, + et /. On le retrouve partout : pièces jointes des e-mails, data URI pour intégrer une image directement dans du HTML ou du CSS, API qui échangent des fichiers en JSON, en-têtes d'authentification HTTP, etc.
Comme 3 octets deviennent 4 caractères, le résultat est environ 33 % plus volumineux que l'original. Pour que la longueur soit un multiple de 4, on ajoute 0 à 2 signes = à la fin.
Le Base64 n'est pas un chiffrement. N'importe qui peut le décoder en un clic : ne l'utilisez jamais pour protéger un mot de passe ou des données personnelles.
Pourquoi le Base64 d'un texte accentué change d'un site à l'autre
Le Base64 convertit des octets, pas des lettres. Le mot « café » occupe 5 octets en UTF-8 (Y2Fmw6k=) mais 4 octets en ISO-8859-1 / Windows-1252 (Y2Fm6Q==) : le résultat n'est donc pas le même. Le Web et la plupart des API utilisent l'UTF-8, c'est pourquoi cet outil encode et décode en UTF-8.
Si, après décodage, vous voyez des caractères bizarres comme « é » à la place de « é », ou des symboles illisibles, le texte d'origine était probablement dans un autre encodage (Latin-1, Windows-1252), ou il ne s'agit pas d'un texte mais d'un fichier.
Base64 URL-safe et data URI
Dans le Base64 classique, les caractères +, / et = ont un sens particulier dans une adresse (URL) et posent problème s'ils y figurent tels quels. Le Base64 URL-safe remplace + par -, / par _ et supprime les = finaux. Les jetons JWT en sont l'exemple le plus courant.
Une data URI s'écrit sous la forme data:image/png;base64,iVBOR... : elle associe le type du fichier et son contenu en Base64, ce qui permet d'insérer une image dans du HTML ou du CSS sans fichier séparé. C'est pratique pour de petites icônes, car cela réduit le nombre de requêtes ; pour les grandes images, mieux vaut garder un fichier classique, puisque leur poids augmente de 33 %.
Calculer la taille après encodage Base64
La longueur du résultat Base64 vaut 4 × ⌈octets d'origine ÷ 3⌉ caractères. Comme 3 octets donnent 4 caractères, la taille est multipliée par environ 4/3.
- 3 octets d'origine → 4 caractères
- 100 Ko d'origine → environ 133 Ko
- Image de 1 Mo → environ 1,33 Mo
Un jeton JWT se compose de trois parties séparées par des points (.) ; celle du milieu est un JSON encodé en Base64 URL-safe. En collant uniquement cette partie, vous pouvez lire les informations qu'elle contient. En revanche, la signature n'est pas vérifiée : l'outil ne permet pas de savoir si le jeton est authentique.