Outil gratuit

    Encodeur / Décodeur Base64

    Encoder du texte en Base64 ou décoder des chaînes Base64 — y compris les variantes compatibles avec les URL.

    Encodage Base64

    Qu'est-ce que l'encodage Base64 ?

    Base64 est un schéma d'encodage binaire-texte qui représente des données binaires à l'aide de 64 caractères ASCII imprimables (A–Z, a–z, 0–9, +, /). Il est largement utilisé pour intégrer des données binaires dans des formats textuels tels que JSON, XML, HTML, les e-mails (MIME) et les URI de données.

    Quand utiliser cet outil ?

    Utilisez cet outil Base64 chaque fois que vous avez besoin d'intégrer une valeur binaire dans un canal de transmission exclusivement textuel : pour générer des en-têtes d'authentification Basic, encoder une clé de signature JWT, intégrer une petite icône sous forme d'URI de données, copier un certificat TLS d'un système à l'autre ou déboguer une charge utile d'API qui renvoie des blobs encodés en Base64. Comme tout s'exécute localement dans votre navigateur, vous pouvez coller des identifiants et des charges utiles confidentielles sans les envoyer à un serveur tiers.

    Base64 standard vs Base64 compatible URL

    Le codage Base64 standard utilise les caractères + et /, qui sont réservés dans les URL. Le codage Base64 compatible URL les remplace par - et _ et supprime le caractère de remplissage = à la fin, ce qui permet de l'utiliser en toute sécurité dans les chaînes de requête et les noms de fichiers.

    Cas d'utilisation courants

    • Encodage des clés API et des jetons en vue de leur transmission dans les en-têtes HTTP
    • Intégration de petites images sous forme d'URI de données dans le code HTML et CSS
    • Encodage des pièces jointes aux e-mails (MIME Base64)
    • Stockage de données binaires dans des charges utiles JSON
    • Décodage des charges utiles des jetons JWT à des fins de débogage
    • Génération d'identifiants d'authentification HTTP de base (`Basic <BASE64(user:pass)>`)
    • Encodage de données binaires dans un fichier JSON lorsqu'un envoi en plusieurs parties n'est pas possible
    • Vérification des jetons JWT : les segments « header » et « payload » sont encodés en Base64 compatible URL

    Base64 FAQ

    Questions fréquentes sur l'encodage et le décodage Base64, ainsi que sur leur utilisation dans les systèmes réels.

    Mes données sont-elles transmises à un serveur lorsque j'utilise cet outil ?
    Non. L'encodage et le décodage s'effectuent entièrement dans votre navigateur via les fonctions natives `btoa` et `atob`. Les données que vous collez ne quittent jamais votre appareil, ce qui rend cet outil sûr à utiliser pour les clés API, les jetons, les identifiants ou toute autre donnée sensible que vous ne souhaitez pas voir transiter sur le réseau.
    Quelle est la différence entre le Base64 standard et le Base64 « URL-safe » ?
    Le Base64 standard utilise les caractères `+` et `/` dans son alphabet, ainsi que le caractère `=` pour le remplissage. Les caractères `+` et `/` ont tous deux une signification réservée dans les URL, et le caractère `=` est souvent encodé en pourcentage ; par conséquent, l'intégration d'une chaîne Base64 standard dans un paramètre de requête ou un chemin d'accès peut l'altérer. Le Base64 « URL-safe » remplace `+` par `-`, `/` par `_` et supprime le caractère de remplissage `=` final, ce qui produit une valeur qui traverse sans altération les routeurs, les lignes de journal et les segments JWT.
    Pourquoi les données encodées en Base64 occupent-elles environ 33 % de place en plus que l'original ?
    Base64 compresse 3 octets (24 bits) de données d'entrée en 4 caractères de sortie (chaque caractère représentant 6 bits). Le rapport est exactement de 4/3 ≈ 1,333, auquel s'ajoutent jusqu'à 2 caractères de remplissage « = » lorsque la longueur des données d'entrée n'est pas un multiple de 3. C’est pourquoi il faut éviter d’utiliser Base64 pour les charges utiles binaires volumineuses lorsque la bande passante est un facteur critique — privilégiez plutôt un transport compatible avec les données binaires (téléchargement multipart, gRPC).
    Puis-je utiliser le codage Base64 pour le chiffrement ?
    Non. Base64 est un codage, pas un chiffrement : toute personne qui voit le résultat peut facilement le reconvertir en octets d’origine. Si vous devez protéger des données sensibles, chiffrez-les d’abord (à l’aide d’AES, de ChaCha20-Poly1305 ou d’un outil plus sophistiqué comme libsodium), puis encodez le texte chiffré en Base64 si vous devez le transmettre via un canal ne prenant en charge que du texte brut.
    Pourquoi mon texte décodé affiche-t-il des caractères inintelligibles ?
    Il existe deux causes courantes. Premièrement, la valeur encodée a peut-être été corrompue lors du transfert : le codage Base64 est fragile, et la modification d’un seul caractère entraîne généralement une séquence d’octets différente. Deuxièmement, les octets source ne sont peut-être pas du texte UTF-8. Cet outil décode en partant du principe qu’il s’agit d’une chaîne UTF-8 ; si le fichier d’origine était un fichier binaire (image, PDF, blob chiffré), le résultat ressemblera à du bruit — c’est tout à fait normal. Enregistrez le résultat décodé dans un fichier et ouvrez-le avec un visualiseur adapté.
    Comment encoder un fichier binaire, par exemple une image ?
    Le navigateur `btoa` nécessite une entrée sous forme de chaîne de caractères ; il ne suffit donc pas de coller la représentation textuelle du fichier pour les fichiers binaires. Pour les fichiers PNG, JPEG, PDF et similaires, utilisez l'API File du navigateur dans un petit script, ou exécutez la commande `Base64 < image.png` sous macOS/Linux. La chaîne de caractères obtenue peut être intégrée directement dans une URI de données HTML ``.

    Surveillez votre infrastructure 24 h/24, 7 j/7

    Assurez le bon fonctionnement de vos serveurs, API et services grâce à la plateforme de surveillance de Xitoring.

    Commencer la surveillance gratuite