> máxima | eficiência | compressão <
// Codificação Base91 com 91 caracteres ASCII imprimíveis para obter a máxima eficiência de espaço
Máxima eficiência
Base91 oferece um dos melhores índices de compressão entre os esquemas de codificação base, com cerca de 23 % de overhead.
Apenas caracteres imprimíveis
Utiliza 91 caracteres ASCII imprimíveis, mantendo compatibilidade com fluxos de texto, logs e protocolos comuns.
Economia de espaço
Mais compacto do que Base64 (≈33 % de overhead), ajudando a reduzir o tamanho de respostas de API, logs e mensagens.
>> informações técnicas
Como o Base91 funciona:
Base91 utiliza 91 dos 94 caracteres ASCII imprimíveis (excluindo hífen, barra invertida e apóstrofo) e agrupa 13–14 bits em cada par de caracteres de saída, atingindo uma eficiência de codificação muito elevada.
Exemplo:
"Hello" → >OwJh>A
Por que usar Base91:
- >Minimizar o tamanho dos dados codificados
- >Overhead em torno de 23 % em comparação aos ~33 % do Base64
- >Baseado apenas em caracteres ASCII imprimíveis
- >Ótimo para cenários com largura de banda ou armazenamento limitados
- >Aumenta a densidade de informação em texto e logs
>> perguntas frequentes
O que é codificação Base91?
Base91 é um esquema de codificação binário‑para‑texto que utiliza 91 caracteres ASCII imprimíveis para obter uma eficiência de compressão muito maior do que formatos tradicionais como Base64.
Quando faz sentido usar Base91?
Base91 é especialmente útil quando cada byte importa – por exemplo, em logs extensos, APIs com largura de banda limitada ou canais de mensagens onde o tamanho da carga precisa ser reduzido ao mínimo.
Quão eficiente é Base91 em comparação com Base64?
Base64 costuma adicionar cerca de 33 % de overhead em relação aos dados originais, enquanto Base91 fica em torno de 23 %, gerando saídas consideravelmente menores.
O Base91 é amplamente suportado?
Base91 não é tão onipresente quanto Base64, mas existem bibliotecas em diversos idiomas e ele é adotado em projetos onde a eficiência de compressão e a compacidade do texto são críticas.
// Comparação
| Nome | bits/char | overhead |
|---|---|---|
| Base16 | 4 | 100% |
| Base32 | 5 | 60% |
| Base64 | 6 | 33.3% |
| Base85 | 6.41 | 24.8% |
| Base91 | 6.51 | 22.9% |
// Exemplos de código
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(...)
>> Mais perguntas
P: Quais são os 91 caracteres do basE91?
R: O basE91 usa 91 dos 94 caracteres ASCII imprimíveis (sem espaço): A–Z a–z 0–9 e ! # $ % & ( ) * + , . / : ; < = > ? @ [ ] ^ _ ` { | } ~ ". Ficam de fora -, \ e '. As aspas " estão incluídas e precisam de escape em JSON ou shell.
P: Por que o overhead do Base91 é de cerca de 23 %?
R: Com 91 símbolos, cada caractere carrega log₂(91) ≈ 6,508 bits. 8 / 6,508 ≈ 1,229, ou seja, cerca de 22,9 % de overhead. Comparação: Base32 60 %, Base64 33 %, Base85 25 %.
P: Quando o Base91 é melhor que o Base64?
R: Só quando cada byte conta, como em sistemas embarcados ou protocolos limitados. O Base91 não é seguro para URLs, não está nas bibliotecas padrão e tem pouco suporte. No dia a dia, o Base64 é melhor.