Encodeur et décodeur Base64
Collez un texte ou choisissez un fichier : le Base64 s’affiche à chaque frappe, accents compris.
Base64
Comment ça marche
Le Base64 écrit des octets avec 64 caractères sûrs : A à Z, a à z, 0 à 9, + et /. Il coupe les octets par groupes de trois (24 bits) et écrit chaque groupe en quatre caractères de 6 bits. Le résultat est donc un tiers plus long que l’original ; un ou deux = complètent le dernier groupe s’il est incomplet.
Un texte est d’abord converti en octets UTF-8, comme le font les navigateurs et les serveurs : « é » donne deux octets, un emoji quatre. C’est pourquoi btoa('é') de JavaScript, qui ne connaît que le Latin-1, ne donne pas le même résultat. La variante URL-safe (base64url) remplace + et /, qui ont un sens dans une adresse web, par - et _, et omet les = : c’est celle des jetons JWT.
| Texte | Octets UTF-8 | Base64 |
|---|---|---|
| Man | 3 | TWFu |
| é | 2 | w6k= |
| Zürich | 7 | WsO8cmljaA== |
| 🇨🇭 | 8 | 8J+HqPCfh60= |
Exemple concret
Une application de Zurich renvoie « Grüezi, ça va ? » dans un en-tête HTTP, qui n’accepte pas les accents : on l’encode en Base64.
Décodé à l’arrivée, on retrouve le texte exact, accents compris, sur n’importe quel système.
Questions fréquentes
Collez la chaîne dans l’outil en mode « Décoder » : le texte apparaît aussitôt. Si ce sont les octets d’un fichier (une image, un PDF), l’outil le reconnaît et propose de le télécharger. Les retours à la ligne et les = manquants sont tolérés.
Non. Le Base64 est un simple encodage, que n’importe qui décode sans clé. Il sert à transporter des octets là où seul du texte passe (courriel, JSON, URL, en-têtes HTTP), pas à protéger une donnée. Un mot de passe en Base64 est un mot de passe en clair.
Parce que le texte a été encodé dans un autre jeu de caractères que l’UTF-8, souvent le Latin-1 ou Windows-1252 : « é » y fait un octet au lieu de deux. Ou, à l’inverse, parce qu’un outil a décodé de l’UTF-8 comme du Latin-1, ce qui donne « é ». Cet outil encode et décode toujours en UTF-8.
Choisissez le fichier en mode « Encoder », avec la sortie en data URI : vous obtenez data:image/png;base64,…, à coller dans <img src="…"> ou background-image: url(…). Réservez-le aux petites images : le fichier grossit d’un tiers et n’est plus mis en cache à part.
Source
Encodage : RFC 4648, « The Base16, Base32, and Base64 Data Encodings », § 4 (Base64) et § 5 (base64url). Texte : UTF-8, RFC 3629. Data URI : RFC 2397.
Outils proches
-
Décodeur de jeton JWTLire l’en-tête et le contenu d’un JWT, avec ses dates en clair et son expiration.
-
Formateur et validateur JSONFormater, valider et minifier du JSON, avec l’erreur à la ligne près et un arbre repliable.
-
Partage de texte et de code par lienUn texte ou un extrait de code dans un lien à envoyer, avec coloration syntaxique, sans compte.