> Tech > Principes de fonctionnement du codage base64

Principes de fonctionnement du codage base64

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Un fichier stream binaire, par définition, peut être constitué de valeurs d’octets quelconques, et pas seulement de caractères texte lisibles en clair. Problème : chaque octet peut avoir 256 valeurs possibles, et moins de la moitié de caractères texte. Pour coder un fichier binaire comme un fichier texte, il faut

donc réduire le nombre de valeurs possibles pour chaque octet de données.

Base64 lit le fichier stream six bits à la fois au lieu de huit bits à la fois, afin de réduire le nombre de valeurs possibles. Six bits n’ont que 64 combinaisons possibles et il y a plus de 64 caractères texte. Pour coder les données en texte, il suffit d’attribuer un caractère texte à chaque valeur possible de 0 à 63. La figure 11 montre l’alphabet base64, c’est-à-dire la table des nombres et de leurs caractères texte correspondants.

Pas si vite ! C’est une belle idée, mais ce n’est pas ainsi que les ordinateurs fonctionnent. On ne peut pas lire six bits à la fois d’un fichier stream : il faut lire par multiples de huit bits. Autrement dit, on ne peut pas descendre au dessous d’un octet à la fois.

Nul besoin d’être agrégé en mathématiques pour voir que le plus petit dénominateur commun de six et de huit est 24. Si on lit le fichier stream trois octets à la fois, on a 24 bits. Lesquels peuvent être codés en quatre caractères texte à six bits chacun. Ce processus est illustré dans le diagramme de la figure 12.

Téléchargez cette ressource

Guide inmac wstore pour l’équipement IT de l’entreprise

Guide inmac wstore pour l’équipement IT de l’entreprise

Découvrez les dernières tendances et solutions IT autour des univers de Poste de travail, Affichage et Collaboration, Impression et Infrastructure, et notre nouveau dossier thématique sur l’éco-conception et les bonnes pratiques à adopter pour réduire votre impact environnemental.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010