Encodeur & Décodeur Base64

Conforme aux formules scientifiques et standards de conversion officiels.

Encode text strings into Base64 format or decode Base64 back to plain text.

⚡ Encodeur & Décodeur Base64
Calculateur interactif en cours de chargement...

Qu'est-ce que l'encodage Base64 ?

Base64 est un algorithme d'encodage binaire-vers-texte conçu pour transporter des données binaires brutes à travers des canaux purement textuels comme les en-têtes HTTP, les corps d'e-mails MIME ou les objets JSON.

Selon la norme RFC 4648, chaque groupe de 3 octets (24 bits) est scindé en 4 blocs de 6 bits, chacun étant projeté sur un alphabet de 64 caractères ASCII (A–Z, a–z, 0–9, +, /). Comme 3 octets deviennent 4 caractères, le volume de données augmente d'environ 33 %. Par exemple, dans example-1, l'encodage du texte 'Hello' en Base64 standard produit SGVsbG8= (5 octets en entrée élargis à 8 caractères avec padding '=').

Quelle est la différence entre Base64 et Base64URL ?

La variante standard utilise les caractères '+' et '/', ainsi que le symbole '=' pour le remplissage. Cependant, dans une URL ou un nom de fichier, '+' désigne un espace et '/' délimite un répertoire, ce qui impose un encodage pourcent (%2B, %2F) peu commode.

La section 5 de la RFC 4648 définit Base64URL en remplaçant '+' par '-' et '/' par '_', tout en autorisant la suppression du padding '='. Dans example-3, l'encodage de '??' en Base64URL sans padding produit Pz8, parfaitement sûr pour les paramètres d'URL et jetons HTTP sans échappement.

Comment Base64 gère-t-il Unicode et l'UTF-8 ?

Base64 opère exclusivement sur des flux d'octets binaires, et non sur des caractères d'affichage. De nombreuses implémentations obsolètes s'appuient sur la fonction btoa() du navigateur, qui échoue immédiatement face aux caractères dont le point de code dépasse 255 (accents français, symboles monétaires, émoticônes).

Notre moteur effectue une sérialisation UTF-8 stricte via TextEncoder avant tout encodage. Comme le prouve example-2, l'encodage de la chaîne Unicode '✓ é € 😀' sur 15 octets UTF-8 produit la sortie Base64 4pyTIMOpIOKCrCDwn5iA, qui se redécode fidèlement vers les caractères d'origine.

Foire aux questions

Le Base64 est-il une forme de chiffrement ?
Non. Le Base64 est strictement un encodage pour le transport de données, et non un chiffrement ou un hachage. Il n'offre aucune confidentialité : n'importe qui peut décoder une chaîne Base64 en quelques millisecondes.
Pourquoi le Base64 augmente-t-il la taille de 33 % ?
Chaque caractère Base64 transporte 6 bits d'information au lieu de 8 bits. Représenter 3 octets (24 bits) requiert 4 caractères (4 × 6 = 24 bits), ce qui génère une augmentation géométrique constante de 4/3 (+33,3 %).
Que signifie le caractère de remplissage '=' ?
Le signe '=' indique le nombre d'octets présents dans le dernier bloc lorsque le total d'octets d'entrée n'était pas un multiple de 3. Un signe '=' signifie 2 octets dans le dernier groupe, et '==' signifie 1 octet.
Mes chaînes ou fichiers sont-ils envoyés sur un serveur ?
Non. Tous les calculs s'exécutent intégralement en local dans la mémoire de votre navigateur via JavaScript. Aucune information n'est transférée ni journalisée en ligne.

Calculateurs associés

Voir tous les calculateurs de autres outils · Explorer tous les calculateurs en ligne