Base64

De knowledge
Version datée du 12 mars 2026 à 14:08 par Jpinon (discussion | contributions) (Page créée avec « Beaucoup de mécanisme de communications autorisent les échanges de caractères mais pas de données binaires. Une liaison série E71 (7 bits avec paraité paire et 1 bit de stop) le permet, par exemple, que du transfert de caractères ASCII de base. Si on désire transférer un fichier binaire (une clé de chiffrage, image bitmap, un fichier exécutable...) on ne peut pas le transférer octets par octets car on va perdre l'octet de poids fort. On utilise... »)
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)
Aller à la navigation Aller à la recherche

Beaucoup de mécanisme de communications autorisent les échanges de caractères mais pas de données binaires. Une liaison série E71 (7 bits avec paraité paire et 1 bit de stop) le permet, par exemple, que du transfert de caractères ASCII de base.

Si on désire transférer un fichier binaire (une clé de chiffrage, image bitmap, un fichier exécutable...) on ne peut pas le transférer octets par octets car on va perdre l'octet de poids fort.

On utilise alors une méthode qui permet de coder des données 8bit pour qu'elles passent sur une liaison textuelle. On ne peut pas utiliser tout le spectre ASCII car certains codes sont "non imprimables". Se sont, en particulier, les caractère dont le code est < 32.

On se limite donc a un "alphabet" de 64 caractères soit:

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

Tous ces caractères sont imprimables sans aucune ambiguité.

64 caractères encodent 6 bits et on cherche à encoder des symboles de 8 bits.