Encoder / Décoder Base64

Encodez ou décodez du texte avec Base64.

...

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 Authorization transporte user:password encode 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.

Foire aux questions

Qu'est-ce que l'encodage Base64 ?
Un schema qui represente des octets arbitraires avec 64 caracteres ASCII surs, de sorte que des donnees binaires ou a caracteres speciaux puissent passer par des canaux uniquement textuels comme l'e-mail, le JSON ou les en-tetes HTTP. "Hello World" s'encode en "SGVsbG8gV29ybGQ=".
Base64 est-il du chiffrement ?
Non. Il n'y a pas de cle — n'importe qui peut decoder une chaine Base64 instantanement. Cela change la representation, pas le secret. Ne l'utilisez jamais pour proteger des mots de passe ou des donnees sensibles.
Pourquoi la sortie encodee se termine-t-elle par des signes = ?
Le remplissage. Base64 traite l'entree par groupes de 3 octets ; quand le dernier groupe n'a que 1 ou 2 octets, un ou deux caracteres = comblent le vide pour que les decodeurs connaissent la vraie longueur.
Puis-je encoder des emoji et du texte non anglais ?
Oui. L'outil convertit le texte en octets UTF-8 avant l'encodage, de sorte que les emoji, accents et caracteres CJK sont preserves sans perte — contrairement au btoa() brut du navigateur, qui echoue sur eux.
De combien la sortie Base64 est-elle plus volumineuse ?
D'environ 33 % : chaque 3 octets d'entree deviennent 4 caracteres de sortie, plus jusqu'a 2 caracteres de remplissage. 1 Mo de donnees devient environ 1,37 Mo encode.