À quoi sert le calculateur de taille Base64 ?
Le Base64 est un système d'encodage qui représente des données binaires à l'aide de 64 caractères ASCII imprimables. On l'utilise très souvent pour intégrer des images dans du HTML/CSS (URI de données), pour joindre des fichiers à un e-mail (MIME) ou pour transporter des données binaires dans du JSON ou des jetons d'authentification. Comme le Base64 transforme chaque groupe de 3 octets en 4 caractères, le résultat encodé est toujours plus volumineux que l'original — environ 33 % de plus. Ce calculateur vous indique précisément la taille que prendront vos données une fois encodées.
Comment l'utiliser
Saisissez la taille de votre fichier ou de vos données d'origine, choisissez l'unité (octets, Ko, Mo ou Go), puis indiquez si la sortie doit inclure le remplissage standard (les caractères = de fin). Le calculateur affiche alors la taille encodée en octets ainsi que le pourcentage de surcharge ajouté par l'encodage.
La formule expliquée
Le Base64 standard traite les données par groupes de 3 octets. Chaque groupe devient exactement 4 caractères, et le dernier groupe incomplet est complété jusqu'à 4 caractères à l'aide du symbole =. La taille avec remplissage est donc :
$$\text{octets\_encodés} = 4 \times \left\lceil \frac{\text{octets\_d'entrée}}{3} \right\rceil$$
Si le remplissage est désactivé, seuls les caractères réellement nécessaires sont produits : \(\left\lceil \frac{4 \times \text{octets\_d'entrée}}{3} \right\rceil\), ce qui évite 1 à 2 caractères de remplissage par encodage.
Exemple concret
Imaginons un fichier de 1 000 octets. On le divise par 3, ce qui donne 333,33, puis on arrondit à l'entier supérieur (ceil) pour obtenir 334, et enfin on multiplie par 4 :
$$334 \times 4 = 1\,336 \text{ octets}$$La surcharge est de \((1336 - 1000) / 1000 = 33{,}6\,\%\). Sans remplissage, le résultat serait \(\left\lceil 4000/3 \right\rceil = \left\lceil 1333{,}33 \right\rceil = 1\,334\) octets.
Foire aux questions
Pourquoi le Base64 est-il toujours plus volumineux ? Chaque tranche de 6 bits de données est associée à un caractère ASCII de 8 bits : on perd donc 25 % d'efficacité, ce qui produit environ 33 % d'octets en plus.
Les sauts de ligne sont-ils pris en compte ? Non. Certains encodeurs MIME insèrent un saut de ligne tous les 76 caractères, ce qui ajoute une infime quantité de données. Cet outil calcule uniquement la taille encodée brute.
Et pour les URI de données ? Une URI de données ajoute également un préfixe du type data:image/png;base64,. Ajoutez la longueur de cette chaîne à la taille encodée pour obtenir la longueur totale de l'URI.
Termes clés expliqués
- Base64
-
Un schéma de codage binaire-vers-texte qui représente les données binaires arbitraires à l'aide d'un ensemble de 64 caractères ASCII imprimables (A–Z, a–z, 0–9, plus
+et/). Il permet au contenu binaire de circuler en toute sécurité à travers les canaux texte uniquement, comme les corps de courrier électronique, JSON, XML et les URL. - Groupe de 3 octets / bloc de 4 caractères
- Base64 fonctionne par groupes fixes. Chaque 3 octets (24 bits) d'entrée sont divisés en quatre fragments de 6 bits, chacun mappé sur un caractère Base64. Ainsi, 3 octets d'entrée deviennent toujours 4 caractères de sortie — la cause première de la croissance de la taille de l'encodage.
-
Rembourrage (
=) -
Lorsque la longueur d'entrée n'est pas un multiple exact de 3, le groupe final est incomplet. L'encodeur ajoute un ou deux caractères
=pour que la longueur de sortie reste un multiple de 4. Un octet restant produit deux=; deux octets restants produisent un=. - Surcharge
- La taille supplémentaire que Base64 ajoute par rapport aux données originales. Parce que 3 octets deviennent 4 caractères, les données encodées sont environ \(\frac{4}{3} \approx 1,333\) fois plus grandes, une augmentation d'environ 33 % (légèrement plus une fois le rembourrage et les sauts de ligne comptabilisés).
- URI de données
-
Un schéma d'URL (par exemple
data:image/png;base64,iVBORw0KGgo…) qui intègre le contenu codé en Base64 d'un fichier directement dans un document, éliminant le besoin d'une demande réseau distincte pour les petites ressources. - Retour à la ligne MIME
- Dans le codage email (MIME), la sortie Base64 est divisée en lignes d'au maximum 76 caractères, chacune terminée par un CRLF. Ces sauts de ligne ajoutent une petite quantité de taille supplémentaire au-delà de l'expansion de base de 33 %.
- Caractère ASCII
- Un caractère unique de l'ensemble ASCII 7 bits, encodé en un octet. Chaque caractère dans la sortie Base64 est un caractère ASCII, donc la longueur encodée en caractères égale sa longueur en octets.