Convertisseur Gratuit

Encodeur Base64 / Décodeur

Encodez du texte ou des fichiers en Base64 et décodez des chaînes Base64 instantanément dans votre navigateur. Gratuit, privé et sans téléchargement.

À propos de cet outil

Base64 est un schéma de codage qui représente les données binaires sous forme de texte ASCII à l'aide de 64 caractères imprimables : A-Z, a-z, 0-9, plus (+) et barre oblique (/), avec des égaux (=) utilisés pour le remplissage. Le format a été conçu à l'origine pour permettre aux pièces jointes binaires de survivre aux transports de courrier électronique 7 bits, mais il s'est étendu à des dizaines d'utilisations aujourd'hui : URL de données en HTML, JSON contenant des données d'image, charges utiles JWT, en-têtes d'authentification de base et tout protocole textuel devant transporter des octets.

L'encodage prend 3 octets d'entrée et produit 4 caractères ASCII de sortie. La sortie est donc 33 % plus longue que l’entrée – ce qui représente le coût de l’adaptation du binaire dans un format texte sécurisé. Le décodage inverse exactement le processus, récupérant les octets d’origine du texte codé.

Cet outil gère les deux sens. Le mode Encodage prend la saisie de texte (ou un fichier binaire via le téléchargement) et produit du texte base64. Le mode décodage prend du texte base64 et produit le texte original ou le binaire téléchargeable. La variante sécurisée pour les URL (utilisant - et _ à la place de + et /) est prise en charge pour les jetons et les identifiants.

Pourquoi utiliser Base64

Base64 est le moyen standard d'intégrer des données binaires dans des contextes contenant uniquement du texte. Les images en ligne en HTML utilisent des URL de données (data:image/png;base64,...) afin qu'une petite icône puisse être livrée avec la page sans demande distincte. Les charges utiles JSON contenant des images, des certificats ou des signatures les codent sous forme de chaînes base64. Les jetons JWT sont trois segments codés en base64 séparés par des points.

Base64 normalise également la gestion des caractères pour les protocoles qui gèrent mal le binaire 8 bits. Les en-têtes d'authentification (l'authentification de base utilise base64), les pièces jointes aux e-mails, les fichiers de configuration contenant des clés et de nombreuses API nécessitent base64 car les binaires ne peuvent pas traverser leurs pipelines de manière fiable.

Comment l'utiliser

Collez les données, choisissez la direction.

  1. Choisissez encoder ou décoder: Encode produit du texte base64 à partir d’une entrée binaire ou texte. Le décodage inverse le processus.
  2. Ajouter une entrée: Pour l'encodage, collez du texte ou téléchargez un fichier binaire. Pour le décodage, collez le texte base64. L'outil détecte automatiquement la variante sécurisée pour les URL.
  3. Convertir: Le navigateur utilise btoa pour l'encodage et atob pour le décodage (avec gestion UTF-8 pour le texte non-ASCII). Le résultat est exact et déterministe.
  4. Copier ou télécharger: Le texte codé peut être intégré dans des URL, JSON, des URL de données HTML ou tout autre protocole basé sur du texte. Téléchargements binaires décodés sous forme de fichier avec une estimation de l'extension appropriée en fonction du type de fichier détecté.

Cas d'utilisation courants

Détails techniques

Base64 mappe tous les 6 bits d'entrée à l'un des 64 caractères de sortie. Trois octets d'entrée (24 bits) produisent quatre caractères de sortie. Lorsque la longueur d'entrée n'est pas un multiple de 3, l'encodeur ajoute un ou deux signes égal pour compléter la sortie à un multiple de 4 caractères.

Base64 sécurisé pour les URL (défini dans la section 5 de la RFC 4648) remplace + par - et / par _ pour produire des chaînes pouvant être utilisées en toute sécurité dans les URL et les noms de fichiers sans autre fuite. Les signes de remplissage égal sont parfois omis dans les contextes sécurisés pour les URL ; les décodeurs acceptent généralement les deux formes.

Les btoa et atob de JavaScript gèrent directement l'ASCII mais échouent sur les chaînes non-ASCII. Pour le texte UTF-8, le convertisseur utilise TextEncoder/TextDecoder pour convertir entre le texte et le binaire, puis encode le binaire en base64. Cela gère correctement les emoji, les caractères accentués et les scripts non latins.

Meilleures pratiques

Questions fréquentes

A quoi sert l’encodage Base64 ?
Base64 convertit les données binaires en texte ASCII. Les utilisations courantes incluent l'intégration d'images dans HTML (URI de données), l'encodage des pièces jointes aux e-mails, la transmission de données binaires dans les API JSON et le stockage de blobs binaires dans des bases de données textuelles.
Le codage Base64 crypte-t-il mes données ?
Non. Base64 est un codage, pas un cryptage. N'importe qui peut décoder une chaîne Base64. Il est conçu pour le transport sécurisé des données, pas pour la sécurité. Utilisez un cryptage réel (AES, RSA) pour les données sensibles.
Pourquoi Base64 augmente-t-il la taille du fichier ?
Base64 représente tous les 3 octets d'entrée sous forme de 4 caractères ASCII, ce qui entraîne une augmentation de taille d'environ 33 %. C'est le compromis pour pouvoir intégrer en toute sécurité des données binaires dans des formats texte.
Puis-je encoder des images en Base64 ?
Oui. Téléchargez un fichier image et l'outil produira une chaîne Base64 que vous pourrez utiliser comme URI de données (data:image/png;base64,...) en HTML ou CSS.
Les jetons JWT sont-ils en base64 ?
Oui — JWT se compose de trois segments codés en base64url séparés par des points. Le premier est l’en-tête, le second la charge utile et le troisième la signature.
Mes données sont-elles téléchargées sur un serveur ?
Non. L'encodage et le décodage s'effectuent dans votre navigateur à l'aide de btoa, atob, TextEncoder et TextDecoder.
Quelle est la taille maximale ?
Jusqu'à 50 Mo. La mémoire du navigateur limite la taille pratique pour les entrées très volumineuses.
Pourquoi ma sortie décodée ressemble-t-elle à des déchets ?
Il est fort probable que la source soit binaire et non textuelle. Passez en mode de téléchargement de fichiers pour obtenir le binaire ou vérifiez que l'entrée est bien du texte codé en base64 plutôt que du binaire.