> maximum | efficacité | compression <
// Encodage Base91 avec 91 caractères ASCII imprimables pour une efficacité d'espace maximale
Efficacité maximale
Base91 offre l'un des meilleurs taux de compression parmi les encodages base classiques, avec seulement ~23 % de surcoût.
Caractères imprimables
Utilise 91 caractères ASCII imprimables pour rester compatible avec la plupart des flux texte et protocoles.
Gain d'espace
Plus compact que Base64 (33 % de surcoût) pour les données texte, ce qui réduit la taille des payloads et des journaux.
>> informations techniques
Fonctionnement de Base91:
Base91 exploite 91 des 94 caractères ASCII imprimables (hors trait d’union, antislash et apostrophe) et regroupe intelligemment 13–14 bits sur deux caractères de sortie, ce qui se traduit par un excellent rendement binaire.
Exemple:
"Hello" → >OwJh>A
Pourquoi utiliser Base91:
- >Réduire au maximum la taille des données encodées
- >Surcoût d'environ 23 % contre 33 % pour Base64
- >Basé uniquement sur des caractères ASCII imprimables
- >Idéal pour les environnements à bande passante limitée
- >Augmente la densité d'information dans les logs et messages
>> questions fréquentes
Qu'est‑ce que l'encodage Base91 ?
Base91 est un schéma d'encodage binaire‑vers‑texte qui utilise 91 caractères ASCII imprimables afin de maximiser l'efficacité de compression par rapport aux encodages comme Base64.
Quand utiliser Base91 plutôt que Base64 ?
Base91 est particulièrement utile lorsque chaque octet compte : journaux applicatifs volumineux, API à bande passante limitée ou stockage de données texte compressées sur le réseau.
Quelle est la différence de rendement entre Base91 et Base64 ?
Base64 ajoute typiquement ~33 % de surcoût par rapport aux données brutes, tandis que Base91 tourne autour de 23 %, ce qui permet d'économiser plusieurs kilo‑octets sur de gros volumes.
Base91 est‑il largement supporté ?
Base91 est moins répandu que Base64, mais il existe des implémentations dans de nombreux langages et bibliothèques open‑source pour les cas où l'efficacité de compression est une priorité.
// Comparaison
| Nom | bits/char | overhead |
|---|---|---|
| Base16 | 4 | 100% |
| Base32 | 5 | 60% |
| Base64 | 6 | 33.3% |
| Base85 | 6.41 | 24.8% |
| Base91 | 6.51 | 22.9% |
// Exemples de code
Alphabet A-Z a-z 0-9 ! # $ % & ( ) * + , . / : ; < = > ? @ [ ] ^ _ ` { | } ~ "
Excluded - \ ' and space (3 of the 94 printable ASCII characters)
Bits log2(91) = 6.508 bits/char -> 8 / 6.508 = 1.229 (~23% overhead)
Python pip install base91 base91.encode(b'Hello')
JS npm i base91 base91.encode(...)
>> Autres questions
Q : Quels sont les 91 caractères de basE91 ?
R : basE91 utilise 91 des 94 caractères ASCII imprimables (hors espace) : A–Z a–z 0–9 et ! # $ % & ( ) * + , . / : ; < = > ? @ [ ] ^ _ ` { | } ~ ". Sont exclus -, \ et '. Le guillemet " est inclus et doit être échappé en JSON ou dans un shell.
Q : Pourquoi le surcoût de Base91 est-il d’environ 23 % ?
R : Avec 91 symboles, chaque caractère porte log₂(91) ≈ 6,508 bits. 8 / 6,508 ≈ 1,229, soit environ 22,9 % de surcoût. À titre de comparaison : Base32 60 %, Base64 33 %, Base85 25 %.
Q : Quand Base91 est-il meilleur que Base64 ?
R : Seulement quand chaque octet compte, par exemple en systèmes embarqués ou protocoles limités. Base91 n’est pas compatible URL, absent des bibliothèques standard et peu supporté. Au quotidien, Base64 reste préférable.