ForHosting KIT · Ferramentas para dev

Codificador basE91

O basE91 guarda texto em 91 caracteres imprimíveis, mais compacto que o Base64 e sem preenchimento: “Hello, world!” vira >OwJh>}A"=r@@Y?F com o alfabeto original de Joachim Henke, e qualquer sequência basE91 volta a ser texto UTF-8. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve
Se você digitar
Texto
Hello, world!
Você obtém
Resultado
>OwJh>}A"=r@@Y?F
Modo de cálculo
Encode
Variante
base91
Bytes
13

basE91 é um esquema compacto de binário para texto que empacota dados em noventa e um caracteres ASCII imprimíveis, em geral mais denso que Base64 e útil quando você precisa de uma carga mais curta e segura em texto sem sair da faixa imprimível clássica. A codificação é determinística: UTF-8 e depois aritmética de fila de bits basE91; a decodificação remove espaços em branco, mapeia cada símbolo pela tabela inversa e rejeita símbolos ilegais em vez de inventar substituições silenciosas.

Codificar texto UTF-8 em basE91

O motor interpreta a string como texto Unicode, serializa-a em bytes UTF-8 e alimenta esses bytes na fila de bits basE91 de Joachim Henke: cada byte de entrada contribui com oito bits e, sempre que mais de treze bits estiverem no buffer, o codificador emite um par de dois caracteres do alfabeto de noventa e um símbolos.

Quando o valor da janela de treze bits é no máximo oitenta e oito, o algoritmo em vez disso consome catorze bits antes de emitir o par — o truque de largura variável que torna basE91 mais denso que uma expansão fixa Base64. Uma fila final parcial é descarregada como um ou dois símbolos restantes para que o lado da decodificação recupere o comprimento exato em bytes sem caracteres de preenchimento como sinais de igual. Strings vazias são válidas e codificam para um resultado vazio com zero bytes.

Texto multilíngue, emoji e pontuação fazem ida e volta completa porque o caminho é UTF-8 pleno, não um atalho Latin-1. A resposta sempre inclui result com a string basE91, mode igual a encode, variant igual a base91 e bytes igual ao comprimento UTF-8 antes da codificação, para que você possa asserir o tamanho da carga nos testes. Entradas idênticas produzem sempre saídas idênticas porque o algoritmo é aritmética pura sem rede, sem sal aleatório e sem relógio de parede.

Use este caminho sempre que precisar de uma representação densa e segura em texto mais compacta que Base64 para fragmentos curtos de configuração, amostras de documentação ou canais basE91 legados.

Decodificar basE91 de volta a texto e tratar caracteres inválidos

Defina mode como decode e coloque uma string basE91 em text. Espaços em branco iniciais, finais e internos — incluindo espaços, tabulações e quebras de linha — são removidos para que colagens multilinha ainda funcionem. O alfabeto é estrito: apenas os noventa e um símbolos definidos por Joachim Henke (letras maiúsculas e minúsculas, dígitos e um conjunto fixo de pontuação imprimível que exclui espaço, hífen, aspas simples e barra invertida) são aceitos.

O decodificador reconstrói a fila de bits emparelhando símbolos: o primeiro de cada par é o dígito baixo módulo noventa e um e o segundo escala por noventa e um; treze ou catorze bits são liberados por par conforme o mesmo limiar de oitenta e oito usado na codificação, e em seguida bytes inteiros são emitidos até restarem menos de oito bits. Um símbolo final sem par é tratado como um descarregamento curto da fila restante.

Uma decodificação bem-sucedida devolve result como a string recuperada, mode decode, variant base91 e bytes como o comprimento UTF-8 decodificado. Prefira esta capacidade quando a intenção de busca for literalmente codificador base91, decodificador basE91 ou converter base91 para conteúdo legível; Base64, Base58 e Ascii85 continuam ferramentas separadas com suas próprias páginas.

Interoperabilidade basE91 legada

Codifique ou decodifique cargas basE91 de Joachim Henke ao integrar ferramentas, arquivos ou bibliotecas que já esperam o alfabeto clássico de noventa e um símbolos.

Como codifico texto em basE91?

O campo result da resposta contém a string basE91 e bytes é o comprimento UTF-8.

Como decodifico basE91 de volta a texto?

Defina mode como decode e coloque a string basE91 em text. Espaços em branco são removidos. O campo result é o texto UTF-8 recuperado.

O que acontece com um caractere basE91 inválido?

Caracteres fora do alfabeto basE91 de noventa e um símbolos são rejeitados; falhas de validação não são cobradas.

O codificador basE91 é gratuito?

A ferramenta do navegador roda grátis no seu dispositivo.

Em que basE91 difere do Base64?

basE91 usa um alfabeto de 91 símbolos e uma fila de largura variável de 13/14 bits, tipicamente cerca de 23% de sobrecarga versus cerca de 33% do Base64. Esta ferramenta implementa basE91 de Joachim Henke, não Base64 RFC 4648.

Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.

POSThttps://api.kit.forhosting.com/enc/base91

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/enc/base91 \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello, world!"}'
{
  "text": "Hello, world!"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.base91",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Quem busca um codificador base91 ou um decodificador basE91 costuma armazenar tokens binários curtos em JSON, tickets ou chat, comparar a sobrecarga em relação ao Base64 ou restaurar uma string basE91 que outra ferramenta produziu com o alfabeto original de Joachim Henke. Esta capacidade concentra-se nesse trabalho do dia a dia: escolha o modo encode ou decode, envie um campo de texto e receba a string transformada mais o comprimento em bytes, ou um erro claro invalid_input quando a carga a decodificar contém um caractere fora do alfabeto basE91.

Codificar texto UTF-8 em basE91

Envie um corpo JSON com o campo de string obrigatório text igual à mensagem em claro que deseja representar em basE91, e deixe mode no valor padrão encode ou defina mode como encode de forma explícita. Aliases opcionais input, value e s são aceitos para o mesmo campo quando você gera clientes a partir de nomes de formulário antigos.

Decodificar basE91 de volta a texto e tratar caracteres inválidos

Qualquer outro caractere — incluindo sinais de igual de preenchimento Base64, hífen ou sublinhado seguros para URL tomados de alfabetos alheios, ou ruído binário — causa falha imediata invalid_input com uma mensagem que nomeia a condição de caractere basE91 inválido, para que os clientes corrijam a colagem em vez de receber Unicode corrompido. Após a validação do alfabeto, os bytes recuperados são decodificados como UTF-8 com um decodificador fatal: se a carga não for texto Unicode válido, você obtém invalid_input em vez de caracteres de substituição que corromperiam as telas posteriores. Falhas de validação não são cobradas na API pré-paga, de modo que sondar um token suspeito é barato para operadores e seguro para usuários finais.

Uso da API, preços, fluxos e limites práticos

Use o codificador basE91 gratuito no navegador para demos de aula, playbooks de suporte, verificações de tokens e conversões pontuais sem instalar pacotes nativos nem programar você mesmo uma fila de bits sob medida. Um fluxo típico codifica um valor de configuração curto para armazenamento em um ticket só de texto, envia-o por e-mail ou chat e o decodifica no serviço receptor com mode decode, afirmando que bytes coincide com o comprimento original. Autores que publicam SDKs podem mapear o campo result diretamente para um botão de copiar, enquanto os rótulos mode e variant tornam os exemplos OpenAPI autoexplicativos para leitores que só conhecem o alfabeto de noventa e um símbolos e a fila variável de treze ou catorze bits. Use a API pré-paga do KIT quando um backend, uma função serverless ou um SDK precisar do mesmo passo de codificação ou decodificação sob saldo a US$ 0,002 por item bem-sucedido; a validação falha nunca consome saldo depois que o motor rejeita a requisição. Combine este endpoint com uma ferramenta Base64 quando um sistema parceiro só fale Base64, mas mantenha os passos em páginas distintas para que cada uma corresponda a uma única intenção de busca — densidade basE91 versus ubiquidade Base64.

Tokens de configuração densos e seguros em texto

Empacote fragmentos curtos de configuração UTF-8 de forma mais compacta que Base64 para tickets, chat e JSON; depois decodifique-os no serviço receptor com o mesmo campo mode.

Documentação e golden de CI

Fixe fixtures de encode e decode para que amostras de documentação e testes de integração contínua falhem rápido se o alfabeto basE91 ou as regras da fila de bits se desviarem.

Ver a documentação completa do KIT →