Encoder et décoder du Base64 en ligne
Collez un texte pour l’encoder en Base64, ou une chaîne Base64 pour retrouver le texte d’origine. Les accents et les emoji sont pris en charge.
Traitement 100 % local, rien n’est envoyé
Comment ça marche ?
Le Base64 découpe les données en groupes de 3 octets (24 bits) et écrit chaque groupe avec 4 caractères de 6 bits, pris dans l’alphabet A-Z a-z 0-9 + /. Si le dernier groupe est incomplet, on ajoute un ou deux « = ».
- En encodage, le texte est d’abord converti en octets UTF-8 : accents et emoji sont gérés.
- En décodage, les espaces et sauts de ligne sont ignorés, le « = » final est facultatif et les deux alphabets (standard et URL-safe) sont acceptés.
Tout est calculé dans votre navigateur : le texte n’est jamais envoyé.
Exemples
Encoder « Bonjour le monde »
Les 16 caractères deviennent Qm9uam91ciBsZSBtb25kZQ== (24 caractères) : le Base64 écrit toujours 4 caractères pour 3 octets, avec le remplissage « = » à la fin.
Décoder « SGVsbG8= »
En mode « Décoder », SGVsbG8= redonne « Hello ». Un jeton ou une chaîne trouvée dans un en-tête s’ouvre de la même façon.
Questions fréquentes
Qu’est-ce que le Base64 ?
Un codage qui représente des octets avec 64 caractères sûrs (lettres, chiffres, « + » et « / »), pour les faire passer dans un e-mail, une adresse, un fichier JSON ou un en-tête. Les données grossissent d’un tiers environ.
Le Base64 est-il un chiffrement ?
Non. Il n’y a aucun secret : tout le monde peut décoder du Base64. Ne l’utilisez jamais pour protéger un mot de passe ou une donnée sensible.
Que change la variante « URL-safe » ?
Elle remplace « + » et « / » par « - » et « _ » et supprime le « = » final, pour pouvoir placer le résultat dans une adresse web sans le modifier. C’est le format des jetons JWT, par exemple.
Pourquoi le décodage échoue-t-il parfois ?
Le texte contient peut-être un caractère qui n’existe pas en Base64, il est tronqué, ou il représente un fichier binaire (image, archive) et non du texte : l’outil le signale.
Les accents et les emoji sont-ils pris en charge ?
Oui : le texte est converti en UTF-8 avant l’encodage et décodé en UTF-8 ensuite, contrairement aux fonctions btoa et atob des navigateurs.