Base64 d'un seul octet : le remplissage

Un seul octet donne 4 caractères Base64, dont deux « = » de remplissage : surcoût de 300 %.

Taille d'origine
1 octets
Caractères Base64
4 (dont 2 de remplissage « = »)
Sauts de ligne ajoutés
aucun
Taille après encodage
4 octets
Surcoût
+ 300 %
Variante sans remplissage (URL)
2 caractères

Le cas en détail

Le Base64 travaille par groupes de 3 octets. Avec un seul octet, il faut compléter : on obtient deux caractères utiles suivis de deux signes « = ». Le surcoût relatif est énorme sur de très petites données et se tasse à un tiers sur de grandes.

À retenir : Dans les adresses web, on utilise souvent la variante sans remplissage, plus courte.

L'exemple chiffré

Valeurs utilisées dans ce cas (des exemples, pas des mesures) :

  • Taille d'origine : 1
  • Unité : octets
  • Sauts de ligne : Aucun (une seule ligne)
Taille d'origine
1 octets
Caractères Base64
4 (dont 2 de remplissage « = »)
Sauts de ligne ajoutés
aucun
Taille après encodage
4 octets
Surcoût
+ 300 %
Variante sans remplissage (URL)
2 caractères

Modifiez les champs ci-dessus pour adapter le calcul à votre situation : le résultat se met à jour tout de suite.

Comment ça se calcule

Base64 transforme chaque groupe de 3 octets en 4 caractères : la taille devient 4 × plafond(n / 3). Le remplissage « = » complète le dernier groupe. Les formats MIME (76 caractères par ligne) et PEM (64) ajoutent un saut de ligne de 2 octets (CRLF) à chaque ligne. Le surcoût est donc d'environ un tiers.

Les résultats sont fournis à titre indicatif, sans valeur de conseil juridique, fiscal ou financier.

Pour aller plus loin