|
|||||||||||||||||||||
Codage Base64Le codage Base64Le principe du codage Base 64 consiste à utiliser des caractères US-ASCII (caractères non accentués) pour coder tout type de données codé sur 8 bits. Les protocoles de courrier électronique ont en effet été prévus à l'origine pour transporter des messages en texte seulement. Or, étant donné la diversité des systèmes de courrier électronique, l'échange de données binaires se traduit la plupart du temps par des transformations du contenu rendant illisible le document original. Le format Base64, utilisé massivement dans les échanges de courrier électronique, permet ainsi de transmettre n'importe quel document binaire (application, vidéo, fichier audio, etc.) en pièce jointe d'un courrier électronique en les codant à l'aide de caractères classiques. Le codage Base64 provoque une augmentation globale de 33% du volume des données à encoder. Principe de codage Base64Le principe du codage Base64 consiste à utiliser 4 caractères imprimables (au format US-ASCII) pour coder un groupe de 3 octets quelconques (3*8 bits = 24 bits). Le codage Base64 utilise un alphabet de 64 caractères imprimables classiques pour représenter une donnée de 6 bits. Les 64 symboles de cet alphabet son choisis pour être universellement lisibles et pour ne pas posséder de signification dans les principaux protocoles de messagerie (en particulier SMTP). ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 123456789+/. En parcourant les données binaires de gauche à droite, des groupes de 24 bits sont créés en concaténant des blocs de 3 données de 8 bits. Chaque groupe de 24 bits est ensuite divisé en 4 groupes de 6 bits, correspondant à 4 caractères de l'alphabet Base64. L'encodage Base64 est prévu pour des données formant un multiple de 24 bits. Ainsi, si le volume des données à coder ne forment pas un multiple de 24 bits, le résultat du codage Base64 doit être complété par 0 à 3 caractères « = » afin d'obtenir un multiple de 24 bits. Ce 65ème caractère ne peut ainsi être présent qu'à la fin des données encodées. Par ailleurs, afin de garantir une compatibilité avec l'ensemble des systèmes de messagerie, les données Base64 sont formattées avec des retours à la ligne afin que chaque ligne ne dépasse pas 76 caractères. Discussions pertinentes trouvées dans le forum
|
|||||||||||||||||||||