Menu
Français

Encodeur / Décodeur Base64

Encodez ou décodez instantanément des chaînes et fichiers Base64.

Dernière mise à jour

Mode
TexteCollez du texte pour commencer
Base64
La sortie encodée ou décodée apparaît ici — tout s'exécute localement.

C'est quoi, le Base64 ?

Le Base64 est un schéma d'encodage qui représente des données binaires à l'aide de 64 caractères imprimables. On l'utilise dès qu'un système purement textuel doit transporter des octets : petites images intégrées en HTML, tokens, pièces jointes d'e-mails, data URLs, secrets copiés-collés dans des logs, ou champs JSON contenant des blobs binaires.

Le Base64 est un *encodage*, pas un chiffrement. Décoder une chaîne Base64 redonne immédiatement le contenu d'origine, donc ne le considérez jamais comme une mesure de sécurité. Tout ce qui est en Base64 est public en pratique, à moins d'avoir été chiffré *avant* d'être encodé.

Sous le capot, Base64 prend 3 octets (24 bits) et les réécrit sous forme de 4 caractères tirés d'un alphabet fixe de 64 symboles (AZ, az, 09, +, /). Quand la longueur de l'entrée n'est pas un multiple de 3, l'encodeur ajoute un ou deux = à la fin en guise de padding. C'est pour ça que les chaînes Base64 se terminent souvent par =.

Ce que vous allez retenir en utilisant le Base64

  • L'encodage change la *représentation* des données ; il ne les protège ni ne les cache — n'importe qui peut les décoder.
  • La sortie Base64 pèse environ 4/3 de la taille des octets d'origine : pratique, mais pas économe en place.
  • Les caractères de padding comme = complètent le dernier groupe de 4 et sont parfaitement normaux dans beaucoup de chaînes Base64.

Encoder et décoder en Base64, étape par étape

  1. Choisissez le sens

    Sélectionnez Encoder si vous avez du texte ou un fichier et que vous voulez la sortie en Base64. Sélectionnez Décoder si vous partez d'une chaîne Base64 et que vous voulez retrouver le contenu d'origine.

  2. Collez votre entrée ou déposez un fichier

    Collez une chaîne dans la zone de texte, ou glissez-déposez un fichier (image, PDF, peu importe) sur la zone prévue. Les fichiers sont convertis en URL data:, prête à intégrer dans du HTML ou du CSS.

  3. Lisez le résultat

    La sortie encodée est la chaîne Base64. La sortie décodée est le texte d'origine — ou, si l'entrée était un fichier, les octets reconstitués proposés sous forme de lien de téléchargement.

  4. Copiez le résultat

    Cliquez sur le bouton de copie pour envoyer le résultat dans le presse-papiers. Tout se passe dans votre navigateur : l'entrée ne quitte jamais votre machine.

Antisèche Base64

Les éléments que vous allez recroiser en permanence dès que vous touchez au Base64 — définis par la RFC 4648.

ÉlémentSignificationExemple
AlphabetLes 64 caractères du Base64 standardA–Z, a–z, 0–9, +, /
Alphabet URL-safeUtilisé par les JWT et dans les URLsA–Z, a–z, 0–9, -, _
PaddingComplète le dernier groupe quand la longueur n'est pas un multiple de 3= ou ==
Taille de groupeOctets par bloc encodé → 4 caractères en sortie3 octets → 4 caractères
InflationLa sortie est ~33 % plus longue que l'entrée100 o → 136 caractères
Data URLFichier embarqué directement dans du HTML/CSSdata:image/png;base64,...

Exemples Base64 à essayer

Décoder un mot tout simple

Encodé

SGVsbG8gV29ybGQ=

Décodé

Hello World

Le = final est du padding parce que Hello World fait 11 octets, donc pas un multiple de 3. Le décodage le retire correctement à chaque fois.

Encoder un petit payload JSON

Original
{"role":"student","active":true}
Base64

eyJyb2xlIjoic3R1ZGVudCIsImFjdGl2ZSI6dHJ1ZX0=

Les tokens JWT encodent chaque segment exactement comme ça — d'où le fait que les payloads JWT commencent presque toujours par eyJ, qui est la forme Base64 de {".

Reconnaître une data URL

Data URL

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNgAAIAAAUAAen8GVAAAAAASUVORK5CYII=

Le préfixe annonce le type MIME (image/png) et l'encodage (base64). Tout ce qui suit la virgule, c'est le contenu du fichier. Pratique pour les toutes petites images qui se chargent en même temps que la page.

Comparer l'alphabet standard et l'alphabet URL-safe

Standard

Pj4/Pyc+Pg==

URL-safe

Pj4_Pyc-Pg

Le Base64 URL-safe remplace + par - et / par _ pour que la valeur tienne dans une URL sans avoir besoin d'être échappée. C'est cette variante qu'utilisent les JWT.

Erreurs courantes avec le Base64

  • Appeler le Base64 du « chiffrement ». N'importe qui peut le décoder, sans mot de passe ni clé.
  • Oublier que le texte Unicode doit être transformé en octets UTF-8 *avant* l'encodage Base64 — sinon les caractères non-ASCII ne reviennent pas correctement après décodage.
  • Retirer manuellement le padding = puis fournir le résultat à un décodeur strict qui l'attend. (Les décodeurs URL-safe acceptent en général l'absence de padding ; les décodeurs standards, pas forcément.)

FAQ Base64

C'est quoi l'encodage Base64 ?
Le Base64 est un encodage qui représente des données binaires sous forme de texte imprimable en utilisant un alphabet de 64 caractères. On s'en sert partout où des octets doivent traverser un système purement textuel — APIs, JSON, JWT, e-mails, data URLs.
Comment fonctionne le Base64 ?
Le Base64 prend 3 octets en entrée (24 bits) et les découpe en quatre groupes de 6 bits. Chaque groupe de 6 bits est associé à l'un des 64 caractères de l'alphabet. Si l'entrée n'est pas un multiple de 3 octets, un ou deux = sont ajoutés en padding.
Comment décoder une chaîne Base64 ?
Collez la chaîne dans un décodeur Base64. La sortie est le texte ou le fichier d'origine. En code, la plupart des langages ont une fonction native : atob() dans les navigateurs, Buffer.from(str, 'base64') en Node.js, base64.b64decode() en Python.
Le Base64, c'est sécurisé ?
Non. Le Base64 est un encodage, pas un chiffrement. Il est conçu pour la représentation et le transport, pas pour la confidentialité. Si vous avez besoin de secret, chiffrez d'abord les données, puis encodez le chiffré en Base64.
Pourquoi le Base64 finit-il parfois par = ?
Le = est du padding. Le Base64 produit 4 caractères pour chaque tranche de 3 octets en entrée. Quand la longueur d'entrée n'est pas un multiple de 3, on ajoute un ou deux = pour que la longueur encodée reste un multiple de 4.
Peut-on encoder des images en Base64 ?
Oui. Les octets d'une image peuvent être encodés en Base64 et glissés dans une URL data:image/png;base64,..., ce qui permet d'intégrer l'image directement dans du HTML, du CSS ou du JSON sans requête réseau supplémentaire.

Autres outils pour développeurs

Apprendre à coder avec Coddy

COMMENCER