Curious TechieDev Toolbox
Tous les Guides/Encodage & Cryptographie8 min read

Guide Complet de l’Encodage Base64

Découvrez ce qu’est Base64, le fonctionnement de l’algorithme 6 bits, les variantes URL-safe et pourquoi ce n’est pas du chiffrement.

Points Clés
  • Base64 est un encodage binaire-texte standardisé par le RFC 4648 utilisant 64 caractères ASCII.
  • Il regroupe 3 octets (24 bits) en 4 caractères de 6 bits, augmentant la taille de ~33%.
  • Base64 N’EST PAS du chiffrement et ne procure aucune confidentialité.
  • La variante URL-safe remplace + par - et / par _.

Les canaux de communication historiques comme les e-mails (SMTP) et les URL ont été conçus pour ne transmettre que du texte ASCII 7 bits. Pour acheminer des données binaires 8 bits (images, pièces jointes, signatures), les ingénieurs ont créé l’encodage Base64.

1. Qu’est-ce que le Base64 ?

Le Base64 est un schéma d’encodage standardisé par la RFC 4648 qui convertit des flux d’octets binaires en un jeu de 64 caractères ASCII imprimables : majuscules (A-Z), minuscules (a-z), chiffres (0-9) et les symboles + et /.

2. Mécanique Mathématique de 3 à 4 Octets

L’algorithme découpe les données en blocs de 24 bits (3 octets), scindés en 4 nombres de 6 bits (2^6 = 64). Chaque valeur sert d’indice dans la table de conversion Base64 :

3 Octets en Entrée: [01001101] [01100001] [01101110] (24 bits = "Man")
4 Blocs en Sortie: [010011] [010110] [000101] [101110]
Indice Base64: 19 22 5 46
Sortie Base64: T W F u => "TWFu"

3. Pourquoi le Remplissage avec le Signe Égal (=) est Nécessaire

Si le nombre d’octets n’est pas divisible par 3, des bits à zéro sont ajoutés pour finaliser le dernier groupe de 6 bits et un ou deux signes égal (=) sont insérés afin que le décodeur rétablisse fidèlement le volume initial.

4. Variantes Base64 pour URL (URL-Safe)

Le Base64 standard contient + et /, réservés dans les URL. Dans le Base64 URL-safe (JWT, OAuth), + devient - et / devient _, avec suppression habituelle du signe =.

5. Le Mythe du "Chiffrement Base64"

Le Base64 n’est absolument pas du chiffrement. Aucune clé secrète n’est employée. Quiconque intercepte une chaîne Base64 peut la décoder en une milliseconde. Ne l’utilisez jamais pour masquer des mots de passe.