Encodeur et Décodeur Base64
Encodez et décodez du Base64 pour texte, fichiers et images — avec data URI, dans votre navigateur.
Encodeur et décodeur Base64 - convertir du texte en Base64 en ligne
Base64 transforme n'importe quelle suite d'octets en un alphabet court et sûr de 64 caractères, capable de traverser des en-têtes d'e-mail, des chaînes JSON, des URL, des attributs XML et tous les copier-coller. Cet encodeur et décodeur Base64 en ligne fonctionne instantanément dans les deux sens : collez du texte et cliquez sur Encoder, collez une chaîne Base64 et cliquez sur Décoder, ou passez sur l'onglet Fichier pour convertir une image, un PDF ou tout autre fichier en Base64.
Aucun compte à créer, aucune file d'attente, et rien n'est téléversé : le fichier que vous choisissez est lu par le navigateur lui-même. La conversion se fait en JavaScript natif : assez rapide pour de longues charges utiles et assez discrète pour des données internes.
Qu'est-ce que l'encodage Base64 ?
Base64 est un schéma d'encodage du binaire vers le texte. Il lit les données par groupes de trois octets, découpe ces 24 bits en quatre blocs de 6 bits et associe à chaque bloc un caractère de l'ensemble A-Z a-z 0-9 + /. Lorsque la longueur n'est pas un multiple de trois, un ou deux caractères = sont ajoutés comme remplissage. Le résultat pèse environ 33% de plus que l'original, mais il ne contient aucun caractère de contrôle ni rien qu'un protocole textuel puisse abîmer.
Comment encoder ou décoder du Base64 en ligne
- Utilisez l'onglet Texte pour du texte, ou l'onglet Fichier pour encoder un fichier.
- Collez votre texte : texte brut, JSON, fragment XML ou chaîne Base64 existante.
- Cliquez sur Encoder pour convertir un texte lisible en Base64, ou sur Décoder pour retrouver le contenu d'origine d'une chaîne Base64.
- Dans l'onglet Fichier, déposez un fichier sur la zone prévue : le Base64 apparaît aussitôt. Cochez Préfixe de data URI pour obtenir une valeur
data:prête à coller. - Utilisez Copier pour récupérer le résultat, Télécharger pour l'enregistrer dans un fichier, ou Effacer pour repartir de zéro.
Convertir une image en Base64
Ouvrez l'onglet Fichier et déposez le PNG, le JPG, le SVG ou l'icône à intégrer. L'outil lit les octets en local et affiche le Base64 immédiatement, avec un aperçu pour vérifier que vous avez pris la bonne image. Cochez Préfixe de data URI et vous obtenez la valeur complète data:image/png;base64,..., directement utilisable dans une règle CSS background-image, une balise img ou un champ JSON. Le chemin inverse fonctionne aussi : collez une data URI dans l'onglet Texte, cliquez sur Décoder, et l'image est prévisualisée puis proposée au téléchargement au lieu de s'afficher en caractères illisibles. Les fichiers jusqu'à 10 Mo sont acceptés.
Décoder du Base64 en PDF
Les API qui renvoient des factures, des étiquettes d'expédition ou des rapports envoient souvent le PDF sous forme d'une longue chaîne Base64, qui commence généralement par JVBERi0 - le Base64 de %PDF-. Collez-la dans l'onglet Texte, avec ou sans préfixe data:application/pdf;base64,, et cliquez sur Décoder. L'outil reconnaît le PDF à ses premiers octets, l'affiche dans la visionneuse PDF de votre navigateur juste sous la sortie et propose Télécharger pour l'enregistrer sous decoded.pdf ; Ouvrir le PDF dans un nouvel onglet lui donne toute une fenêtre. Dans l'autre sens, déposez un PDF dans l'onglet Fichier pour obtenir son Base64. La page Base64 en PDF ouvre le décodeur prêt pour exactement cet usage.
Où l'on rencontre réellement du Base64
- Les en-têtes d'authentification HTTP Basic, qui transportent
utilisateur:motdepassesous forme d'une seule chaîne Base64. - Les data URI qui intègrent une petite icône ou une police directement dans le CSS ou le HTML au lieu d'une requête séparée.
- Les pièces jointes d'e-mail : MIME encode les parties binaires en Base64 depuis les années 1990.
- Les JSON Web Tokens, dont l'en-tête et la charge utile sont des segments Base64URL.
- Les charges utiles d'API qui doivent transporter un fichier, un certificat ou une signature dans un champ JSON.
- Les Secrets Kubernetes et de nombreux systèmes CI/CD, qui stockent des valeurs encodées en Base64 dans du YAML.
Base64 est un encodage, pas un chiffrement
C'est le malentendu le plus répandu, et il a de vraies conséquences en sécurité. Base64 n'a ni clé ni secret : quiconque voit la chaîne la décode en un clic, exactement comme vous allez le faire sur cette page. N'utilisez jamais Base64 pour dissimuler un mot de passe, une clé d'API ou des données personnelles. Si vous avez besoin de confidentialité, chiffrez d'abord puis encodez le texte chiffré pour le transport. Si vous devez prouver que des données n'ont pas changé, utilisez une empreinte issue du générateur de hash.
Base64 standard et Base64URL
Deux caractères font toute la différence. Le Base64 standard utilise + et /, qui ont une signification particulière dans une URL ou un nom de fichier. Base64URL les remplace par - et _ et supprime généralement le remplissage =. Les JWT, les paramètres OAuth et beaucoup d'API modernes utilisent cette variante compatible URL : si un jeton refuse de se décoder, vérifiez ces substitutions avant de conclure que les données sont corrompues.
Problèmes fréquents avec Base64 et solutions
- Caractère invalide : la copie a emporté un guillemet ou du texte alentour. Les espaces et retours à la ligne sont retirés pour vous : ne supprimez que ce qui n'appartient pas à la chaîne.
- Remplissage incorrect : une chaîne Base64 valide a une longueur multiple de quatre. Les
=manquants sont rétablis automatiquement, et le Base64URL avec-et_est converti également. - Préfixe de data URI : vous pouvez laisser
data:image/png;base64,en place : il est détecté, retiré et utilisé pour nommer le fichier décodé. - Accents ou emojis illisibles : les octets d'origine n'étaient pas en UTF-8. Un contenu réellement binaire est détecté et proposé au téléchargement au lieu d'être affiché en caractères cassés.
- Sortie plus longue que prévu : cette croissance de 33% est normale et confirme que la conversion a bien eu lieu.
Vos données restent sur votre appareil
L'encodage comme le décodage s'exécutent intégralement côté client, et le fichier que vous choisissez est lu par le navigateur plutôt qu'envoyé quelque part. Rien n'est transmis à un serveur, écrit dans un journal ou conservé après la fermeture de l'onglet. C'est exactement ce qu'il faut pour les données que l'on colle habituellement dans un convertisseur : jetons de session, valeurs de configuration et tickets de support contenant des données clients.
Encoder et décoder du Base64 en ligne de commande ou en code
| Plateforme | Encoder | Décoder |
|---|---|---|
| Linux / macOS | base64 fichier.png ou echo -n 'texte' | base64 | base64 -d encode.txt (-D sur les anciens macOS) |
| PowerShell | [Convert]::ToBase64String([IO.File]::ReadAllBytes('fichier.png')) | [Convert]::FromBase64String($s) |
| Python | base64.b64encode(data) | base64.b64decode(s) |
| JavaScript | btoa(str) dans le navigateur, Buffer.from(str).toString('base64') sous Node | atob(s) / Buffer.from(s, 'base64') |
| PHP | base64_encode($data) | base64_decode($s) |
| Java | Base64.getEncoder().encodeToString(bytes) | Base64.getDecoder().decode(s) |
Un piège : btoa n'accepte que du Latin-1, donc encoder du texte avec des accents ou des emoji dans le navigateur demande d'abord un passage par TextEncoder. L'outil ci-dessus gère l'UTF-8 pour vous, ce qui explique qu'il soit souvent plus rapide que de se souvenir de l'incantation.
Outils complémentaires
Base64 voyage rarement seul. Inspectez les jetons composés de segments Base64URL avec le décodeur JWT, échappez les valeurs de query string avec l'encodeur d'URL, remettez en forme la charge utile décodée avec le formateur JSON et calculez des empreintes avec le générateur de hash.