Base64 est la technologie d’encodage, decodage binaire-texte la plus connue, utilisée pour convertir des données en texte brut afin d’éviter la corruption des données lors de leur transfert entre divers supports de stockage. En outre, elle est couramment employée pour intégrer des fichiers texte à des données binaires telles que HTML, CSS, JavaScript, XML, images, mp3, pdf.
En raison de l’omniprésence de cet algorithme, Base64 est bien documenté et pris en charge par de nombreux langages logiciels, a donné lieu à de nombreuses modifications et, évidemment, est assorti de ses propres spécifications. Pourtant, aussi étrange que cela puisse paraître, il n’existe pas de site officiel ou de site Web spécifiquement consacré à cet algorithme. J’ai donc entrepris de l’améliorer.
Algorithme Base64
Base64 est un algorithme qui code ou decode qui vous permet de transformer n’importe quel caractère en un alphabet composé de lettres latines, de chiffres, de plus et de barres obliques. Grâce à lui, vous pouvez convertir des caractères chinois, des emoji et même des images en une chaîne “lisible”, qui peut être sauvegardée ou transférée n’importe où.
Pour comprendre de façon imagée pourquoi Base64 a été inventé, imaginez qu’au cours d’un appel téléphonique, Alice souhaite envoyer une image à Bob. Le premier problème est qu’elle ne peut pas simplement décrire l’aspect de l’image, car Bob a besoin d’une copie exacte. Dans ce cas, Alice peut convertir l’image dans le système binaire et dicter à Bob les chiffres binaires (bits), après quoi il pourra les reconvertir en image originale.
Le deuxième problème est que les tarifs des appels téléphoniques sont trop élevés et que dicter chaque octet comme 8 chiffres binaires durera trop longtemps. Pour réduire les coûts, Alice et Bob conviennent d’utiliser une méthode de transfert de données plus efficace en utilisant un alphabet spécial, qui remplace chaque “six chiffres” par une “lettre”.
L’histoire d’Alice et Bob n’est qu’un exemple réfléchi pour vous indiquer quel type de problème résout l’algorithme Base64. En fait, il s’agit d’un codage binaire en texte, dont la tâche est de coder des données binaires en caractères imprimables, lorsque le canal de transmission des données ou le support de stockage ne peut pas gérer les codages de caractères 8 bits.