Encodeur / Décodeur Base64 (UTF-8 et URL-safe)
Tape du texte ou colle une chaîne Base64 pour convertir dans les deux sens. Gère l'UTF-8 (y compris les emojis et les caractères CJK) et prend en charge la variante URL-safe utilisée dans JWT et OAuth.
Fonctionnement
Ce qu'est (et n'est pas) le Base64
Le Base64 encode des octets arbitraires en utilisant un alphabet de 64 caractères (A-Z, a-z, 0-9, +, /, avec le rembourrage =). C'est la méthode standard pour intégrer des données binaires — octets d'image, blobs chiffrés, jetons signés — dans des formats texte uniquement comme JSON, HTML ou les en-têtes d'e-mail. La sortie est environ 33 % plus grande que l'entrée.
Le Base64 est un encodage, pas un chiffrement. N'importe qui peut décoder une chaîne Base64 pour retrouver les octets d'origine. Ne l'utilise pas pour cacher des secrets — utilise un vrai algorithme de chiffrement si tu as besoin de confidentialité.
URL-safe vs standard
Le Base64 standard inclut '+' et '/', qui ont une signification spéciale dans les URLs et doivent être encodés en pourcentage. Le Base64 URL-safe (RFC 4648 §5) remplace '+' par '-', '/' par '_', et supprime le rembourrage '=' final. Les JWT, les jetons OAuth et de nombreuses API web utilisent la forme URL-safe.
Si tu décode un JWT ou un jeton manuellement, active l'option URL-safe. Si tu travailles avec des e-mails classiques ou des données intégrées dans des PDF, laisse-la désactivée. Le décodeur accepte les deux formes lorsque URL-safe est activé, car l'alphabet standard est un sur-ensemble sans la paire spéciale.
Gestion de l'UTF-8
L'ancienne fonction btoa() des navigateurs ne gère que l'ASCII. Cet outil utilise TextEncoder pour convertir d'abord ton entrée en octets UTF-8, puis encode ces octets en Base64. Cela signifie que les emojis, les caractères CJK, les lettres latines accentuées et tout autre caractère Unicode s'encodent et se décodent correctement. L'approche octets-puis-Base64 est la même que celle utilisée par les bibliothèques JWT et la plupart des frameworks modernes.
Questions fréquentes
›Le Base64 est-il du chiffrement ?
Non. C'est une façon d'encoder du binaire sous forme de texte ASCII. N'importe qui peut le décoder. Utilise un vrai chiffrement (AES, RSA, etc.) pour la confidentialité.
›Pourquoi l'URL-safe est-il différent ?
Le Base64 standard utilise '+' et '/' qui ont une signification spéciale dans les URLs et nécessitent un encodage en pourcentage. Le Base64 URL-safe substitue '-' et '_' pour éviter ce problème.
›Puis-je décoder la signature d'un JWT ?
Décoder la signature donne les octets bruts de la signature, mais ils sont destinés à la vérification, pas à la lecture humaine. Décode l'en-tête et le payload du JWT (les deux premiers segments) pour voir les données.
›Est-ce que ça fonctionne pour les fichiers binaires ?
Pas directement — colle uniquement du texte. Pour les fichiers, utilise un outil adapté au binaire. (La plupart des navigateurs disposent d'une paire atob/btoa intégrée utilisable dans les DevTools pour les petits fichiers.)
›Pourquoi mon texte décodé est-il illisible ?
Soit l'entrée n'était pas du Base64 valide, soit elle encodait des octets non-UTF-8 (ex. un fichier Latin-1). Vérifie l'encodage d'origine. Les outils qui décodent « en texte » supposent l'UTF-8.
›Les données sont-elles envoyées quelque part ?
Non. L'encodage et le décodage s'effectuent entièrement dans ton navigateur.
›Quelle est la surcharge de taille ?
Environ 33 % de plus que les octets source (chaque groupe de 3 octets d'entrée devient 4 caractères en sortie). L'URL-safe sans rembourrage a la même surcharge.
›Pourquoi le rembourrage est-il important ?
Le Base64 standard rembourre la fin avec '=' pour que la longueur soit un multiple de 4. Les versions URL-safe omettent souvent ce rembourrage car il n'est pas nécessaire au décodage.
Outils similaires
Dernière mise à jour: