Encodeur / Décodeur Base64 en Ligne
Besoin de convertir du texte lisible au format Base64 pour les en-têtes HTTP, ou de déchiffrer le contenu d’un jeton API ? Notre Encodeur & Décodeur de Texte Base64 est un outil spécialisé pour travailler avec des chaînes de texte, capable de gérer des complexités telles que la diacritique ou les caractères spéciaux.
Travaillez-vous avec des images ?
Si votre code commence pardata:image/png...ou si vous souhaitez convertir un fichier en texte, cet outil n’affichera que des caractères insensés. Utilisez notre outil spécialisé pour la conversion d’images.
Comment fonctionne le format Base64 ?
Beaucoup de gens utilisent Base64 quotidiennement, mais peu savent comment il fonctionne “sous le capot”. Il ne s’agit pas de magie, mais de mathématiques simples avec des bits.
Le texte ordinaire dans un ordinateur est stocké en 8 bits (1 octet). Cependant, Base64 utilise un “alphabet” de 64 caractères (A-Z, a-z, 0-9, +, /). Puisque 2^6 = 64, un caractère Base64 représente exactement 6 bits d’information.
Processus de conversion (Algorithme) :
- Trois caractères de votre texte sont pris (3 × 8 bits = 24 bits).
- Ces 24 bits sont divisés en quatre groupes de 6 bits.
- Chaque groupe est assigné un caractère de la table Base64.
Conséquence : Puisque nous transformons 3 caractères en 4 caractères, la chaîne Base64 résultante est toujours approximativement 33 % plus longue que le texte original.
Le problème du jeu de caractères : Pourquoi les convertisseurs Base64 courants détruisent le français ?
Si vous avez déjà essayé d’encoder un mot comme “français” dans la console de votre navigateur en utilisant la fonction btoa('français'), vous avez probablement obtenu une erreur : String contains characters outside of the Latin1 range.
Base64 a été conçu à l’origine pour les caractères ASCII 7 bits. Cependant, le français, les emojis et d’autres symboles spéciaux (UTF-8) occupent plus d’octets en mémoire (caractères multi-octets).
- Lettre
a= 1 octet. - Lettre
é= 2 octets. - Emoji 🚀 = 4 octets.
Notre outil résout ce problème. Avant l’encodage Base64, nous convertissons correctement le texte en une séquence d’octets UTF-8. Ainsi, vous pouvez encoder en toute sécurité des objets JSON, des textes français et des symboles modernes sans risque de corruption des données.
Où est utilisé le codage de texte Base64 ?
Alors que les images en Base64 servent principalement à l’intégration dans CSS/HTML, le Base64 textuel a des utilisations complètement différentes dans les systèmes backend :
1. Authentification de base HTTP
Lorsque vous vous connectez à une API, l’en-tête ressemble souvent à ceci :
Authorization: Basic dXppdmF0ZWw6aGVzbG8=
Derrière ce code se cache simplement un nom d’utilisateur et un mot de passe combinés au format utilisateur:motdepasse. Notre outil vous permet de générer ou de vérifier facilement ces en-têtes.
2. Jetons Web JSON (JWT)
Les applications web modernes utilisent les JWT pour la connexion. Un tel jeton ressemble à trois longues chaînes séparées par des points. La partie de données (Payload) est un objet JSON ordinaire encodé en Base64.
- Conseil : Essayez d’insérer la partie médiane de votre jeton JWT ici et de la décoder. Vous verrez exactement quelles données l’application enregistre sur vous (par exemple, ID utilisateur, expiration).
3. Fichiers de configuration (Secrets Kubernetes)
Des plateformes comme Kubernetes stockent les données secrètes (Secrets) dans les fichiers de configuration YAML précisément en Base64. Il ne s’agit pas de chiffrement, mais d’un moyen de stocker des données binaires ou du texte avec des caractères problématiques (sauts de ligne, guillemets) dans un fichier texte.
Qu’est-ce que l‘“encodage Base64 sûr pour les URL” et pourquoi est-ce important ?
L’alphabet Base64 standard contient les caractères + (plus) et / (barre oblique). Ces deux caractères ont une signification spéciale dans les adresses URL :
/sépare les répertoires.+est souvent interprété comme un espace.
Si vous envoyiez un Base64 standard dans un paramètre d’URL (par exemple, site.com?token=ab/cd+ef), le serveur pourrait mal interpréter les données.
La solution (mode URL Safe) : Notre interrupteur active la variante Base64URL (selon la RFC 4648), qui effectue les changements suivants :
+est remplacé par-(tiret)./est remplacé par_(tiret bas).- Les caractères
=(rembourrage), qui ne sont pas nécessaires dans les URL, sont supprimés à la fin.
Mythe : Base64 n’est pas du chiffrement !
Il est important de comprendre la différence fondamentale que les débutants confondent souvent :
- Encodage (Encoding - Base64) : Sert à la transmission de données. C’est comme emballer un objet dans une valise pour éviter qu’il ne se casse en chemin. Quiconque trouve la valise peut l’ouvrir (décoder) et voir le contenu. Ce n’est pas sécurisé pour les données secrètes.
- Chiffrement (Encryption - AES, RSA) : Verrouille les données avec une clé. Sans la clé, vous ne pouvez pas accéder au contenu.
- Hachage (Hashing - SHA, MD5) : Un processus unidirectionnel (par exemple, pour stocker des mots de passe). Le texte original ne peut pas être récupéré à partir du résultat.
Si vous devez envoyer un mot de passe ou des informations sensibles, le Base64 seul ne suffit pas. Vous devez utiliser HTTPS (SSL/TLS) qui chiffre la transmission.