Encodage Base64

Avec l'outil de codage Base64, vous pouvez chiffrer le texte que vous saisissez avec la méthode Base64. Si vous le souhaitez, vous pouvez décoder le code Base64 crypté avec l'outil Base64 Decode.

Qu'est-ce que l'encodage Base64 ?

Le codage Base64 est un schéma de codage qui permet de transporter des données binaires dans des environnements qui n'utilisent que certains codages de caractères restreints (environnements dans lesquels tous les codes de caractères ne peuvent pas être utilisés, tels que xml, html, script, applications de messagerie instantanée). Le nombre de caractères dans ce schéma est de 64, et le nombre 64 dans le mot Base64 vient d'ici.

Pourquoi utiliser l'encodage Base64 ?

Le besoin d'encodage Base64 découle des problèmes qui surviennent lorsque les médias sont transmis au format binaire brut aux systèmes textuels. Étant donné que les systèmes textuels (tels que le courrier électronique) interprètent les données binaires comme une large gamme de caractères, y compris des caractères de commande spéciaux, la plupart des données binaires transmises au support de transfert sont mal interprétées par ces systèmes et sont perdues ou corrompues lors de la transmission. traiter.

Une méthode de codage de ces données binaires d'une manière qui évite de tels problèmes de transmission consiste à les envoyer sous forme de texte ASCII brut au format codé Base64. C'est l'une des techniques utilisées par la norme MIME pour envoyer des données autres que du texte brut. De nombreux langages de programmation, tels que PHP et Javascript, incluent des fonctions d'encodage et de décodage Base64 pour interpréter les données transmises à l'aide de l'encodage Base64.

Logique d'encodage Base64

Dans le codage Base64, 3 * 8 bits = 24 bits de données constitués de 3 octets sont divisés en 4 groupes de 6 bits. Les caractères correspondant aux valeurs décimales comprises entre [0-64] de ces 4 groupes de 6 bits sont appariés à partir de la table Base64 pour encoder. Le nombre de caractères obtenus à la suite de l'encodage Base64 doit être un multiple de 4. Les données codées qui ne sont pas un multiple de 4 ne sont pas des données Base64 valides. Lors de l'encodage avec l'algorithme Base64, lorsque l'encodage est terminé, si la longueur des données n'est pas un multiple de 4, le caractère "=" (égal) est ajouté à la fin de l'encodage jusqu'à ce qu'il soit un multiple de 4. Par exemple, si nous avons des données encodées en Base64 à 10 caractères à la suite de l'encodage, deux "==" doivent être ajoutés à la fin.

Exemple d'encodage Base64

Par exemple, prenez les trois nombres ASCII 155, 162 et 233. Ces trois nombres forment un flux binaire de 100110111010001011101001. Un fichier binaire tel qu'une image contient un flux binaire qui fonctionne pour des dizaines ou des centaines de milliers de zéros et de uns. Un encodeur Base64 commence par diviser le flux binaire en groupes de six caractères : 100110 111010 001011 101001. Chacun de ces groupes est traduit en nombres 38, 58, 11 et 41. Un flux binaire à six caractères est converti entre binaire (ou basique). 2) en caractères décimaux (base 10) en élevant au carré chaque valeur représentée par 1 dans le tableau binaire par le carré positionnel. En partant de la droite et en se déplaçant vers la gauche et en partant de zéro, les valeurs du flux binaire représentent 2^0, puis 2^1, puis 2^2, puis 2^3, puis 2^4, puis 2^ 5.

Voici une autre façon de voir les choses. En partant de la gauche, chaque position vaut 1, 2, 4, 8, 16 et 32. Si l'emplacement a un nombre binaire 1, vous ajoutez cette valeur ; si l'emplacement a 0, vous manquez. Tableau binaire 100110 tours 38 : 0 * 2 ^ 01 + 1 * 2 ^ 1 + 1 * 2 ^ 2 + 0 * 2 ^ 3 + 0 * 2 ^ 4 + 1 * 2 ^ 5 = 0 + 2 décimal + 4 + 0 + 0 + 32. L'encodage Base64 prend cette chaîne binaire et la divise en valeurs 6 bits 38, 58, 11 et 41. Enfin, ces nombres sont convertis en caractères ASCII à l'aide de la table d'encodage Base64.