Comprendre l'encodage et le décodage Base64
Ce que fait l'encodage Base64
Le Base64 représente des données à l'aide d'un jeu fixe de 64 caractères imprimables : les lettres A à Z en majuscules et minuscules, les chiffres 0 à 9 et les deux symboles + et /. Cet outil prend le texte que vous saisissez ou collez et le réécrit dans cet alphabet, et il effectue tout aussi bien l'opération inverse : collez une chaîne Base64 et il reconstitue le texte d'origine.
Un simple bouton de mode bascule entre l'encodage et le décodage, ce qui vous permet de passer de l'un à l'autre sans recharger la page, et le résultat s'affiche dès que vous lancez l'opération, prêt à être copié.
Un exemple concret
Le Base64 traite les données trois octets à la fois. Ces trois octets de 8 bits sont regroupés en quatre blocs de 6 bits, et chaque bloc désigne un caractère de l'alphabet. Prenez le mot Man : ses octets deviennent quatre valeurs qui correspondent à T, W, F et u, si bien que Man s'encode en TWFu.
Lorsque la longueur de l'entrée n'est pas un multiple de trois, un ou deux caractères = sont ajoutés en remplissage. Hello World, par exemple, s'encode en SGVsbG8gV29ybGQ=, où le = final indique qu'un remplissage a été nécessaire pour compléter le dernier groupe.
Quand l'utiliser
Le Base64 est la façon habituelle de transporter des données qui ne sont pas du texte brut à travers des canaux qui n'acceptent que du texte. Vous pouvez décoder un segment d'un JSON Web Token (JWT) pour en inspecter les claims, lire les identifiants glissés dans un en-tête HTTP Basic Auth, ou déballer une valeur issue d'un cookie, d'un fichier de configuration ou d'une réponse d'API pour voir ce qu'elle contient réellement.
Dans l'autre sens, l'encodage vous permet d'intégrer une petite image directement dans du HTML ou du CSS sous forme de data URI, ou de coller un contenu quasi binaire là où l'on attend du texte brut sans qu'il soit altéré en chemin.
Remarques et cas particuliers
Le texte est traité en UTF-8 avant l'encodage, de sorte que les lettres accentuées, les caractères CJK et les emojis restent intacts après un aller-retour complet au lieu d'être corrompus. Le décodage vérifie d'abord l'entrée : une chaîne contenant des caractères hors de l'alphabet Base64, ou dont le remplissage est incorrect, est rejetée avec une erreur claire plutôt que de renvoyer n'importe quoi.
Cet outil utilise l'alphabet standard avec + et / ; la variante compatible URL qui les remplace par - et _ est un encodage proche mais distinct. Gardez à l'esprit que le Base64 est un encodage, pas un chiffrement : il ne cache rien à lui seul, puisque n'importe qui peut décoder le résultat pour retrouver l'original.