Plus de jeux sur WuGames.ioSponsoriséDécouvrez des jeux de navigateur gratuits — jouez aussitôt, sans téléchargement ni inscription.Jouer

Encodeur/Décodeur Base64

Encodeur et décodeur Base64 gratuit en ligne. Encodez du texte en Base64 ou décodez du Base64 en texte instantanément. Prend en charge UTF-8, ASCII, encodage URL-safe et plusieurs jeux de caractères. Parfait pour les développeurs travaillant avec des API, l'encodage de données et le développement web.

Mode
Ou déposez un fichier à encoder en Base64
upload
Glissez-déposez un fichier ici, ou cliquez pour parcourir. Les images s'affichent ci-dessous.
Max 10 Mo. 100% côté client — le fichier ne quitte pas votre appareil.
Options d'Encodage

Encodeur/Décodeur Base64 - Encoder et Décoder Base64 en Ligne

Un puissant outil d'encodage et décodage Base64 en ligne qui vous permet d'encoder facilement du texte au format Base64 ou de décoder des chaînes Base64 en texte brut. Prend en charge plusieurs jeux de caractères (UTF-8, ASCII, UTF-16, ISO-8859-1), option d'encodage URL-safe et conversion instantanée. Parfait pour les développeurs, administrateurs système et toute personne travaillant avec l'encodage Base64 dans le développement web, les API ou la transmission de données.

Qu'est-ce que le Base64 et quand l'utiliser ?

Base64 est un schéma d'encodage binaire-vers-texte défini dans la RFC 4648 qui représente des octets arbitraires de 8 bits à l'aide d'un alphabet de 64 caractères (A-Z, a-z, 0-9, + et /). Ce n'est pas du chiffrement : il n'ajoute aucune confidentialité. Vous l'utilisez lorsque vous devez transporter ou intégrer des données binaires dans un canal uniquement textuel : corps d'e-mail (MIME, RFC 2045), en-têtes d'authentification HTTP Basic, payloads JSON ou XML, URIs data: pour images en ligne dans HTML et CSS, segments JWT, clés et certificats PEM, et colonnes de base de données acceptant uniquement du texte. Chaque trois octets d'entrée deviennent quatre caractères de sortie, donc le format encodé est environ 33% plus volumineux que la source. Si vos données sont déjà du texte, ne les encodez pas en Base64.

Pourquoi la sortie est-elle 33% plus grande que mon entrée ?

Base64 mappe chaque 3 octets (24 bits) à 4 caractères de 6 bits chacun, donnant un ratio d'expansion de 4:3 (environ 1,333). Si la longueur d'entrée n'est pas un multiple de 3, l'encodeur complète le groupe final avec un ou deux caractères = pour que la longueur de sortie soit toujours un multiple de 4. Pour les payloads typiques, cela signifie environ 33% de surcoût, plus quelques octets de remplissage. Pour de très petites entrées, le surcoût relatif est plus important ; pour un seul octet, vous obtenez 4 caractères (expansion de 300%). Si la taille compte, considérez Base85/Ascii85 (environ 25% de surcoût) ou un transport binaire brut. Recompresser la chaîne Base64 avec gzip n'aide presque jamais.

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

Base64 standard (RFC 4648 section 4) utilise + et / comme les deux derniers caractères de l'alphabet et = pour le remplissage. Ces trois symboles entrent en collision avec des caractères réservés dans les URL, les chaînes de requête et les noms de fichier. Base64 URL-safe (RFC 4648 section 5) substitue - à + et _ à /, et abandonne souvent entièrement le remplissage = final. Les octets décodés sont identiques : seul l'alphabet diffère. Les jetons JWT, l'état OAuth et la plupart des API web modernes utilisent la variante URL-safe. Si vous décodez une chaîne contenant - ou _ avec un décodeur standard, vous obtiendrez n'importe quoi ou une erreur. Assurez-vous que votre encodeur et votre décodeur s'accordent sur l'alphabet.

Base64 peut-il gérer les chaînes Unicode ou seulement ASCII ?

Base64 opère sur des octets, pas sur des caractères, donc la question se réduit à : comment votre chaîne est-elle convertie en octets avant l'encodage ? La réponse universelle est UTF-8 (RFC 3629). Encoder la chaîne "café" devient d'abord les octets 63 61 66 C3 A9 en UTF-8, puis Base64 produit "Y2Fmw6k=". Un décodeur qui interprète ces mêmes octets de retour en UTF-8 retournera "café" correctement. Si l'expéditeur et le destinataire ne s'accordent pas sur l'encodage du texte — l'un utilise UTF-8 et l'autre Latin-1 — l'aller-retour produit du mojibake. Cet outil utilise UTF-8 partout. Pour déboguer le texte international, vérifiez d'abord la séquence d'octets avec une visionneuse hexadécimale.

Encodeur/Décodeur Base64 — Encodeur et décodeur Base64 gratuit en ligne. Encodez du texte en Base64 ou décodez du Base64 en texte instantanément. P
Encodeur/Décodeur Base64

Pourquoi j'obtiens des erreurs "caractère invalide" lors du décodage ?

L'alphabet standard contient exactement 64 caractères plus = pour le remplissage. Tout autre octet — saut de ligne, espace, tabulation, guillemet typographique, emoji, ou un + qui a été obligeamment transformé en espace par un analyseur d'URL — fera échouer le décodage strict. Causes courantes : (1) la chaîne a transité par un système qui ajuste les lignes à 76 caractères selon la convention MIME mais le décodeur n'est pas en mode tolérant MIME ; (2) un formulaire URL a traité + comme un espace ; (3) la chaîne provenait d'un attribut HTML où & était encodé comme entité ; (4) le remplissage = a été retiré en route. Corrections : retirez les espaces avant le décodage, remplacez les espaces par +, et rajoutez = à la fin pour que la longueur soit un multiple de 4.

Le Base64 est-il considéré comme du chiffrement ou une forme de sécurité ?

Non — Base64 est de l'encodage, pas du chiffrement. La transformation est entièrement réversible sans aucune clé, et tout décodeur Base64 de la planète peut lire votre sortie. Traiter Base64 comme un moyen de "cacher" des mots de passe, des clés d'API ou des données personnelles est l'une des erreurs de sécurité les plus courantes dans les revues de code. L'authentification HTTP Basic, par exemple, envoie les identifiants sous forme de Base64("utilisateur:motdepasse") — c'est pourquoi Basic auth nécessite HTTPS pour être sûre. Si vous avez besoin de confidentialité, utilisez de la vraie cryptographie : AES-GCM ou ChaCha20-Poly1305 pour le chiffrement symétrique, RSA-OAEP ou X25519 pour l'échange de clés, et une bibliothèque éprouvée (libsodium, Web Crypto API, OpenSSL).

Comment encoder en streaming un gros fichier sans le charger en mémoire ?

Base64 est compatible avec les blocs car chaque 3 octets d'entrée se mappent proprement à 4 caractères de sortie, vous pouvez donc encoder par morceaux tant que chaque morceau est un multiple de 3 octets (sauf le morceau final, qui reçoit le remplissage). Dans Node.js, canalisez le fichier via fs.createReadStream vers un Transform qui appelle Buffer.toString('base64') sur chaque morceau multiple de 3. En Python, utilisez base64.encodebytes sur des lectures itérées de, par exemple, 57 Ko (multiple de 3, tient dans les lignes MIME de 76 caractères). Dans le navigateur, l'API FileReader.readAsDataURL gère cela pour vous, mais pour les fichiers énormes, préférez Blob.stream() avec TransformStream. Évitez le piège d'encoder des morceaux indépendamment et de concaténer : si une taille de morceau n'est pas divisible par 3, le = au milieu corrompt la sortie.

Qu'est-ce que Base64URL sans remplissage, et pourquoi JWT l'utilise-t-il ?

JWT (RFC 7519) et JOSE (RFC 7515) spécifient des segments encodés en base64url avec tout le remplissage = supprimé. La raison est purement cosmétique et opérationnelle : les jetons voyagent dans les URL, les en-têtes HTTP et les cookies où = nécessite soit un encodage pourcentage (=%3D) soit déclenche des analyseurs attendant des paires clé=valeur. Supprimer le remplissage raccourcit les jetons de 1 à 3 caractères et évite le casse-tête de l'échappement. Pour décoder, vous devez rajouter le remplissage pour que la longueur de la chaîne soit un multiple de 4 : ajoutez "", "==" ou "=" selon la longueur mod 4. La plupart des bibliothèques JWT le font pour vous, mais si vous décodez manuellement avec Buffer.from(str, 'base64url') dans Node 16+ moderne, cela fonctionne directement. Dans les navigateurs, atob() ne comprend pas l'alphabet URL-safe.

Fonctionnalités Clés

  • Encoder du texte au format Base64 instantanément
  • Décoder des chaînes Base64 en texte original
  • Support de plusieurs jeux de caractères (UTF-8, ASCII, UTF-16, ISO-8859-1)
  • Option d'encodage Base64 URL-safe
  • Gestion automatique des espaces et du padding
  • Statistiques de comparaison de taille en temps réel
  • Inversion en un clic entre modes encodage et décodage
  • Copier le texte encodé/décodé dans le presse-papiers
  • Télécharger les résultats en fichiers texte
  • Uploader des fichiers texte pour encodage/décodage
  • Support du mode sombre
  • Traitement 100% côté client - vos données ne quittent jamais votre navigateur
  • Aucune limite de taille de fichier
  • Fonctionne hors ligne après le chargement initial
  • Design responsive adapté mobile
  • Messages d'erreur clairs pour entrée Base64 invalide
  • Support des caractères Unicode et emoji
  • Aucune inscription ou connexion requise