Affichage en Français Passer à l'anglais

Encodeur et décodeur Base64

Encodez du texte en Base64 ou décodez du Base64 en texte. Compatible UTF-8, prend en charge les caractères au-delà de l’ASCII.

  1. Collez le texte ou la chaîne Base64 dans la zone.
  2. Cliquez sur Encoder pour convertir du texte en Base64, ou sur Décoder pour convertir du Base64 en texte.
  3. Cochez « Compatible URL » si la valeur va dans une URL ou un JWT — utilise - et _ et omet le remplissage.
  4. Cliquez sur Copier pour mettre le résultat dans le presse-papiers.
Que fait-il ?

Base64 encode des octets quelconques avec 64 caractères ASCII imprimables, afin que des transports non-sûrs pour le binaire (chaînes JSON, URL, corps d’e-mail, variables d’environnement, authentification HTTP Basic) puissent les transporter sans les abîmer. Cet outil traite correctement l’entrée UTF-8 — il encode votre chaîne en octets UTF-8 puis encode ces octets en Base64, de sorte que les caractères non-ASCII effectuent un aller-retour propre. La sortie est environ 33 % plus grande que l’entrée (3 octets deviennent 4 caractères).

Exemple

Encodage du texte « Hello, world! » :

SGVsbG8sIHdvcmxkIQ==

Encodage du même texte avec « Compatible URL » activé (remplissage retiré) :

SGVsbG8sIHdvcmxkIQ

Encodage du texte avec emoji « café ☕ » :

Y2Fmw6kg4piV

Pourquoi ma chaîne Base64 ne se décode-t-elle pas ?

  • Incohérence standard / compatible URL. Les chaînes contenant - ou _ sont du base64url, pas du Base64 standard. Basculez la case « Compatible URL » pour correspondre.
  • Remplissage manquant. La longueur d’une chaîne Base64 standard doit être un multiple de 4. SGVsbG8 échoue ; SGVsbG8= fonctionne. Ajoutez des = jusqu’à ce que la longueur soit divisible par 4.
  • Espaces ou sauts de ligne dans la valeur. Certains systèmes coupent le Base64 tous les 76 caractères avec \n. La plupart des décodeurs le tolèrent, les plus stricts non. Retirez les espaces avant de décoder.
  • Décodé deux fois par accident. Décoder U0dWc2JHOA== donne SGVsbG8, qui est lui-même du Base64. Si la sortie ressemble encore à du Base64, décodez-la à nouveau.
  • Données binaires non-UTF-8. Si les octets décodés ne sont pas de l’UTF-8 valide (ex. un en-tête PNG), les décoder comme du texte échouera ou affichera n’importe quoi. Utilisez un outil Base64 qui comprend les fichiers pour le binaire.
  • Guillemets typographiques ou points de suspension visibles. Copier depuis un traitement de texte peut remplacer " par des guillemets courbes ou couper de longues chaînes avec une ellipse. Passez d’abord par un éditeur de texte brut.
Questions fréquentes

Quelle est la différence entre Base64 standard et Base64 compatible URL ?

Le Base64 standard (RFC 4648) utilise + et /, et remplit avec =. Le Base64 compatible URL (base64url) remplace + par - et / par _, et omet généralement le remplissage pour que la chaîne passe telle quelle dans un chemin ou une requête URL. Les JWT utilisent base64url. Cochez « Compatible URL » quand la sortie va dans une URL.

Cet outil gère-t-il correctement les emojis et le texte non-ASCII ?

Oui. L’entrée est d’abord encodée en octets UTF-8, puis ces octets sont encodés en Base64. Le décodage inverse les deux étapes. C’est pour cela que coller « café » et décoder le résultat redonne « café », pas du mojibake. De nombreux vieux outils Base64 supposent du Latin-1 et corrompent tout ce qui est hors ASCII.

Puis-je encoder un fichier binaire comme une image ou un PDF ?

Cette page encode uniquement du texte. Pour encoder un fichier en Base64, utilisez un outil qui le lit en binaire (ou la console du navigateur avec FileReader.readAsDataURL). Cet outil sert aux chaînes — le cas courant est d’intégrer des identifiants, de la configuration ou des champs JSON.

Pourquoi ma sortie décodée ressemble-t-elle à n’importe quoi ?

Le plus souvent, l’entrée n’était pas du Base64 au départ, ou du Base64 compatible URL a été décodé comme standard (ou l’inverse). Essayez de basculer la case « Compatible URL ». Autre cause fréquente : décoder une chaîne qui est en réalité du binaire encodé en Base64 et non du texte — les octets ne sont alors pas de l’UTF-8 valide.

Le remplissage = est-il important ?

Le Base64 standard remplit la sortie pour que sa longueur soit un multiple de 4. La plupart des décodeurs acceptent l’entrée sans remplissage, mais certains stricts la refusent. Le Base64 compatible URL omet généralement le remplissage. Si un décodeur se plaint, ajoutez des = jusqu’à ce que la longueur soit divisible par 4, ou retirez-les tous et réessayez.

Conservez-vous le texte que j’encode ou décode ?

Non. Nous ne gardons aucun texte collé ici. Votre entrée est effacée dès que vous fermez ou rechargez la page — rien n’est conservé, et il n’y a aucun enregistrement de ce que vous avez encodé ou décodé. Pour plus de tranquillité, vous pouvez regarder dans les outils de développement de votre navigateur.