Encodeur / Décodeur Base64

Convertir texte et fichiers vers Base64, et inversement — UTF-8 et emojis compris.

Cliquez ou déposez un fichier
Taille max : 10 Mo · Tous formats acceptés
0 caractères en entrée 0 caractères en sortie
Traitement effectué localement dans votre navigateur. Aucune donnée envoyée à nos serveurs.

Qu'est-ce que le Base64 ?

Le Base64 est un encodage qui représente des données binaires en utilisant uniquement 64 caractères imprimables ASCII (A-Z a-z 0-9 + /, plus = pour le padding). Chaque groupe de 3 octets binaires devient 4 caractères Base64. C'est volontairement verbeux mais transportable sans précaution dans des canaux qui n'acceptent que du texte (e-mail, JSON, XML, URL, attributs HTML).

À quoi sert l'encodage Base64 ?

Pourquoi le Base64 est-il « 33 % plus volumineux » que l'original ?

Chaque groupe de 3 octets binaires (24 bits) devient 4 caractères Base64 (4 × 6 bits = 24 bits effectifs représentés sur 4 × 8 bits en ASCII). Le surcoût théorique est donc 4/3 ≈ 1,33×, soit +33 %. En pratique le ratio est très légèrement supérieur à cause du padding (=) en fin de chaîne. Ne soyez pas surpris qu'un fichier de 10 Mo produise environ 13,3 Mo de Base64.

Différence entre Base64 standard et URL-safe

Le Base64 standard (RFC 4648 §4) utilise + et /, qui sont des caractères réservés dans une URL. La variante « URL-safe » (RFC 4648 §5) remplace + par - et / par _ pour pouvoir s'intégrer dans un lien sans encodage supplémentaire. Cet outil utilise la variante standard (la plus universelle) ; si vous avez besoin de l'URL-safe, un simple remplacement + → - et / → _ suffit.

Confidentialité — calcul local, conforme RGPD

Aucun fichier, aucun texte ne quitte votre navigateur. La lecture passe par FileReader, l'encodage par btoa natif et le téléchargement par URL.createObjectURL — toutes des API locales du navigateur. Aucun appel réseau, aucun stockage côté serveur, aucun cookie de pistage. TropEasy, c'est trop easy.

Questions fréquentes

Sélectionnez l'onglet Texte, laissez Encoder coché, puis tapez ou collez votre texte. La chaîne Base64 apparaît instantanément en dessous, prête à être copiée. L'encodage gère correctement l'UTF-8 (accents français, caractères chinois, emojis…).

Cochez Décoder, collez votre Base64 dans la zone de saisie : les espaces et retours à la ligne sont ignorés. Si la chaîne est invalide ou ne représente pas du texte UTF-8 valide, un message d'erreur précis s'affiche sous le champ. Le bouton Échanger permet de réinjecter le résultat dans l'entrée pour itérer rapidement.

Oui. Contrairement au btoa() natif de JavaScript qui se limite à l'ASCII (Latin-1), notre outil convertit d'abord le texte en octets UTF-8 puis encode ces octets en Base64. Les caractères accentués, idéogrammes, emojis et autres caractères Unicode sont fidèlement préservés à l'aller comme au retour.

10 Mo. Cette limite évite les freezes navigateur sur des appareils peu puissants : un fichier de 10 Mo produit déjà environ 13,3 Mo de Base64, et la chaîne complète est tenue en mémoire dans une textarea. Pour des fichiers plus gros, fractionnez-les ou utilisez un outil en ligne de commande (base64 sous Linux/macOS, certutil sous Windows).

Une data URL est une chaîne au format data:<mime>;base64,<contenu> qu'on peut directement coller dans une balise <img src="…">, un attribut CSS background-image ou un PDF embarqué. Activez l'option Inclure le préfixe data URL pour que la sortie inclue automatiquement le bon préfixe MIME selon le type du fichier d'origine.

Non. La lecture du fichier passe par FileReader, l'encodage par btoa et le téléchargement du fichier décodé par URL.createObjectURL — toutes des API navigateur. Aucun appel réseau, aucun stockage côté serveur, aucun cookie de pistage. L'outil reste utilisable hors-ligne après le premier chargement.