tigtools

Encodeur / décodeur Base64

Convertissez du texte ou n’importe quel fichier en Base64, ou décodez Base64 pour retrouver du texte lisible ou le fichier d’origine. Les accents, les emoji et les données binaires sont correctement pris en charge.

Fonctionne dans votre navigateur Sans inscription

Type d’entrée
Sens de conversion

Mode d’emploi

  1. Choisissez Texte ou Fichier en haut de la page.
  2. Pour le texte, choisissez un sens de conversion, puis saisissez ou collez le texte. Le résultat se met à jour au fur et à mesure.
  3. Pour encoder un fichier, sélectionnez-le ou déposez-le (jusqu’à 10 MB). Cochez « Générer une URL de données » pour l’intégrer dans HTML ou CSS.
  4. Pour reconvertir Base64 en fichier, choisissez Base64 → Texte, collez les données, puis cliquez sur « Télécharger le fichier ».

Fonctionnement

Base64 représente les données binaires à l’aide de 64 caractères ASCII imprimables : A–Z, a–z, 0–9, + et /. Tous les 3 octets deviennent 4 caractères : la forme encodée est donc environ 33 % plus volumineuse que l’original. Si la longueur des données d’entrée n’est pas un multiple de 3, la sortie est complétée par un ou deux signes =.

Base64 est un encodage, pas un chiffrement. N’importe qui peut le décoder sans clé : il ne faut donc jamais l’utiliser pour dissimuler des mots de passe ou des données personnelles. Il permet aux données binaires de circuler dans des systèmes conçus pour le texte, comme les e-mails (MIME), JSON, XML, les en-têtes HTTP et les data URLs.

Le texte est d’abord converti en octets UTF-8, ce qui permet d’encoder correctement les caractères hors ASCII. C’est important, car la fonction btoa intégrée au navigateur échoue avec des caractères comme é ou les emoji. Lors du décodage, l’outil vérifie que le résultat est un UTF-8 valide. Sinon, les données sont binaires et s’affichent en hexadécimal plutôt que sous forme de texte illisible.

La variante compatible avec les URL (base64url, section 5 de la RFC 4648) remplace + par - et / par _, et omet généralement le remplissage =, car ces caractères ont une signification particulière dans les URL. Elle est utilisée dans les JSON Web Tokens et de nombreuses API Web. Le retour à la ligne MIME (RFC 2045) répartit la sortie en lignes de 76 caractères maximum, comme l’exigent certains systèmes de messagerie et fichiers de certificats PEM.

Le décodage tolère certains écarts sans risque : les espaces et les sauts de ligne sont ignorés, le remplissage manquant est ajouté et les deux alphabets sont acceptés. Toute autre anomalie, comme un caractère isolé ou un signe de remplissage au milieu, est signalée avec sa position au lieu d’être ignorée sans avertissement.

Exemples

Encoder du texte avec des accents et des emoji

« Grüße 👋 » devient R3LDvMOfZSDwn5GL. ü et ß occupent chacun 2 octets UTF-8, et l’emoji en occupe 4 : 7 caractères deviennent donc 12 octets, puis 16 caractères Base64.

Créer un en-tête HTTP Authorization Basic

Pour l’utilisateur « alice » et le mot de passe « s3cret », encodez alice:s3cret pour obtenir YWxpY2U6czNjcmV0, puis envoyez l’en-tête Authorization: Basic YWxpY2U6czNjcmV0. Base64 n’étant pas un chiffrement, l’authentification Basic doit être utilisée uniquement via HTTPS.

Récupérer un fichier à partir d’une data URL

Collez une chaîne telle que data:image/png;base64,iVBORw0KGgo… dans Base64 → Texte. L’outil retire le préfixe, reconnaît les données PNG, les affiche en hexadécimal puisqu’il ne s’agit pas de texte, et l’option « Télécharger en tant que fichier » enregistre decoded.png.

Foire aux questions

Base64 est-il une forme de chiffrement ?

Non. Base64 est un encodage réversible qui ne nécessite ni clé ni secret. Toute personne qui voit une chaîne Base64 peut la décoder instantanément : ne l’utilisez jamais pour protéger des mots de passe, des jetons ou des informations personnelles.

Pourquoi mon texte décodé affiche-t-il des caractères étranges dans d’autres outils ?

Cela arrive généralement lorsque le texte a été encodé en UTF-8, puis décodé en Latin-1 (ou inversement). Cet outil utilise toujours UTF-8 et vous avertit lorsque les octets décodés ne correspondent pas à du texte UTF-8 valide.

Quelle est la différence entre Base64 et base64url ?

Les deux utilisent la même méthode, mais base64url remplace + par - et / par _, et supprime généralement le remplissage =. Le résultat peut ainsi être utilisé dans les URL et les noms de fichiers sans échappement supplémentaire. Cet outil accepte les deux formats.

Pourquoi le résultat Base64 est-il plus volumineux que le fichier ?

Base64 convertit 3 octets en 4 caractères, ce qui augmente la taille d’environ 33 %. Le retour à la ligne ajoute 2 caractères (CRLF) tous les 76 caractères. Pour les images volumineuses, il est généralement préférable de servir le fichier normalement plutôt que de l’intégrer sous forme d’URL de données.

Y a-t-il une limite de taille ?

Les fichiers peuvent peser jusqu’à 10 MB. Le texte collé n’a pas de limite fixe, mais les entrées très volumineuses (plusieurs dizaines de mégaoctets) peuvent ralentir la page, surtout sur les téléphones.

Confidentialité

L’encodage et le décodage se font dans votre navigateur. Le texte et les fichiers ne sont jamais envoyés ni stockés, et leur contenu n’est pas inclus dans les données analytiques. Les téléchargements sont créés localement sur votre appareil.