Encoder un fichier en base64
Un fichier devient du texte collable — data-URI, alphabet URL, coupe MIME — et revient à l’identique.
Traité sur cet appareil · aucun envoi de fichier
Vous pouvez aussi coller (Ctrl+V)Confortable jusqu’à 50 Mo
Aucun téléchargement : tout se passe dans cette page.détails
Cet outil n’utilise aucun moteur à télécharger — son code est déjà dans la page.
À quoi sert cette page
Le base64 sert à faire passer des octets par un tuyau qui n’accepte que du texte : une image collée directement dans une feuille de style, une pièce jointe dans un courriel, un certificat dans un fichier de configuration, une clé dans un jeton. La manœuvre est banale, mais les outils en ligne demandent d’envoyer le fichier — pour une clé privée ou un certificat, c’est précisément ce qu’il ne faut pas faire. Cette page encode et décode dans votre navigateur, choisit le bon type MIME d’après la signature du fichier, et vous dit ce que l’opération coûte : un tiers de poids en plus, à chaque fois.
On dit aussi : fichier en base64.
Comment faire
- Déposez le fichier à encoder — ou le texte base64 à décoder, en changeant le sens.
- Choisissez la forme : base64 brut, data-URI complet, ou alphabet URL-safe.
- Téléchargez le résultat, ou copiez son contenu depuis le fichier texte.
Questions fréquentes
Le base64 chiffre-t-il mes données ?
Non, absolument pas, et c’est le malentendu le plus coûteux du sujet. Le base64 est un simple changement d’alphabet, réversible par n’importe qui en une seconde — cette page le fait dans l’autre sens sans rien demander. Un mot de passe « encodé en base64 » dans un fichier de configuration est un mot de passe en clair, écrit d’une manière qui donne l’illusion du contraire.
Pourquoi le fichier grossit-il d’un tiers ?
Parce que le base64 découpe les octets en tranches de 6 bits pour n’utiliser que 64 caractères sûrs : trois octets, soit 24 bits, donnent quatre caractères. Le rapport 4/3 est structurel, il vaut pour toutes les variantes, et les retours à la ligne ajoutent encore un peu. C’est le prix à payer pour traverser un canal qui n’accepte que du texte.
Quand faut-il choisir le data-URI plutôt que le base64 brut ?
Le data-URI est la forme complète, avec son préfixe « data:image/png;base64, » : c’est ce qui se colle tel quel dans une feuille de style, dans un attribut src ou dans un fichier HTML, sans autre manipulation. Le base64 brut, lui, est ce qu’attend un champ de formulaire, une API ou un fichier de configuration qui ajoutera son propre en-tête. En cas de doute, regardez ce qui entoure l’endroit où vous collez.
À quoi sert la coupe à 76 caractères ?
C’est la longueur de ligne fixée par la norme MIME pour les courriels (RFC 2045) : les serveurs de messagerie les plus anciens refusaient les lignes plus longues. La coupe à 64 caractères, elle, est celle des fichiers PEM — certificats et clés. Pour tout usage moderne dans un navigateur ou une API, une seule ligne est ce qu’il faut, et c’est le réglage par défaut.
Le décodage retrouve-t-il le nom d’origine du fichier ?
Non : le base64 ne transporte que des octets, jamais un nom ni une date. L’outil reprend donc le nom du fichier texte que vous déposez et lui ajoute l’extension déduite de la signature retrouvée dans les octets — un PNG redevient un .png même si le texte s’appelait « collage.txt ». Si la signature n’est reconnue par aucune entrée de notre table, le fichier sort en .bin.
Bon à savoir
- Le base64 coûte +33 % de poids, toujours : trois octets deviennent quatre caractères. Un fichier de 3 Mo donne 4 Mo de texte, un peu plus encore si l’on ajoute des retours à la ligne. Ce n’est pas une compression, c’est le contraire.
- Tout se passe en mémoire dans l’onglet : au-delà d’une cinquantaine de méga-octets, l’encodage devient inconfortable et un onglet peut être fermé par le navigateur. Le base64 n’est pas fait pour les gros fichiers, il est fait pour les petits.
- Le type MIME écrit dans un data-URI est déterminé par la signature du fichier, pas par son extension : un `.txt` qui contient en réalité un PNG sera annoncé comme un PNG. Quand la signature n’est pas reconnue, le type est `application/octet-stream`.
- À l’encodage, l’alphabet URL-safe remplace « + » et « / » par « - » et « _ » et supprime le remplissage « = », conformément à la RFC 4648 §5 : c’est la forme des jetons JWT et des identifiants dans les adresses.
- Au décodage, l’outil est tolérant sur l’entrée : sauts de ligne, espaces, préfixe data-URI et alphabet URL sont acceptés, avec ou sans remplissage. En revanche un caractère hors alphabet arrête le traitement, avec sa position — c’est la seule information qui permette de corriger un copier-coller tronqué.
- Le nom du fichier décodé reprend celui du fichier texte, avec l’extension déduite de la signature retrouvée. Le nom d’origine n’est pas récupérable : le base64 ne transporte que des octets, jamais un nom.