Ce que fait reellement Base64
Base64 represente des octets arbitraires en n'utilisant que 64 caracteres ASCII surs (A–Z, a–z, 0–9, +, /, plus = pour le remplissage). Chaque groupe de 3 octets d'entree devient 4 caracteres de sortie, de sorte que les donnees encodees sont environ 33 % plus volumineuses que l'original. Il existe pour que des donnees binaires ou a caracteres speciaux puissent transiter par des canaux qui ne gerent que du texte brut — corps d'e-mails, chaines JSON, attributs HTML, en-tetes HTTP.
Exemple concret : Hello World s'encode en SGVsbG8gV29ybGQ=. Le = final est un remplissage qui marque le dernier groupe de 3 octets comme incomplet — les decodeurs en ont besoin pour savoir ou les donnees se terminent.
Support UTF-8 complet
La fonction brute btoa() du navigateur bloque sur tout ce qui sort du Latin-1 — essayez d'encoder un emoji avec elle et vous obtenez une erreur "characters outside of the Latin1 range". Cet outil convertit d'abord votre texte en octets UTF-8, de sorte que café, 日本語 et 🚀 s'encodent et se decodent sans perte. café devient Y2Fmw6k= (5 octets, car é prend deux octets en UTF-8), et decoder Y2Fmw6k= vous redonne exactement café.
Usages courants
- Data URI : integrer de petites images ou polices directement dans le CSS/HTML sous forme
data:image/png;base64,…. - Authentification HTTP Basic : l'en-tete
Authorizationtransporteuser:passwordencode en Base64. - Jetons JWT : chacun des trois segments separes par des points est du JSON encode en Base64url — decodez-en un pour inspecter ses revendications.
- Binaire dans JSON/XML : contenus de fichiers, cles et certificats sont couramment transmis sous forme de chaines Base64 dans les API.
Base64 n'est pas du chiffrement
Voici le piege qui merite d'etre repete : Base64 est un encodage, pas un chiffrement. Il n'y a pas de cle — n'importe qui peut le decoder instantanement, comme vous pouvez le verifier avec cet outil meme. Ne traitez jamais Base64 comme un moyen de cacher des mots de passe ou des secrets. Si vous avez besoin de verifications d'integrite, utilisez le generateur de hash ; si vous avez d'abord besoin d'un secret solide, utilisez le generateur de mots de passe. Et notez que le Base64 standard utilise + et /, qui ne sont pas surs dans les URL — passez la sortie encodee dans l'encodeur d'URL avant de la placer dans une chaine de requete. Comme tous les outils ici, l'encodage et le decodage tournent entierement dans votre navigateur ; rien n'est envoye a un serveur.