ForHosting KIT · Ferramentas para dev

Codificador e decodificador z-base-32

“Hello” vira jb1sa5dx em z-base-32, o alfabeto Base32 de Zooko que deixa de fora o 0, o 2, o l e o v e não acrescenta preenchimento, então os códigos ficam curtos e fáceis de ditar ou copiar à mão. 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
Modo de cálculo
Encode
Você obtém
Resultado
jb1sa5dx
Comprimento
8
Bytes de entrada
5
Alfabeto
z-base-32

z-base-32 é a variante de Base32 orientada a pessoas de Zooko Wilcox-O'Hearn: um alfabeto de trinta e dois símbolos cuidadosamente permutado que favorece leitura, escrita e transcrição falada, ainda empacotando cinco bits por caractere. Diferente do Base32 do RFC 4648, remove pares confusos, reordena símbolos para sons comuns aparecerem com mais frequência e omite o padding com sinais de igual, mantendo tokens curtos. Esta capacidade converte texto UTF-8 em z-base-32 minúsculo ou recupera o texto original a partir de uma string z-base-32.

Como o z-base-32 empacota bits com o alfabeto de Zooko

z-base-32 parte da mesma ideia de cinco bits por caractere do Base32 clássico, mas a tabela de símbolos é completamente diferente. Os trinta e dois caracteres são y b n d r f g 8 e j k m c p q x o t 1 u w i s z a 3 4 5 h 7 6 9 nessa ordem.

Os dígitos zero e dois, a letra ele e a letra vê ficam de fora porque se confundem facilmente com outros glifos quando alguém lê um código em voz alta ou o copia à mão. Os símbolos restantes são ordenados para que vogais e consoantes frequentes tendam a aparecer antes no espaço de valores, tornando strings aleatórias um pouco mais pronunciáveis. A codificação trata a entrada como bytes UTF-8, lê-os como um fluxo contínuo de bits e emite um caractere do alfabeto a cada cinco bits.

Quaisquer bits restantes no final recebem zero à direita para completar um quinteto final; nenhum sinal de igual é anexado. A decodificação inverte o mapa: cada símbolo contribui com cinco bits, bytes completos são emitidos assim que oito bits se acumulam, e bits residuais de padding que não formam um byte completo são descartados. Espaços em branco são ignorados para colagens multilinha ainda funcionarem, e letras maiúsculas viram minúsculas antes da busca.

Esta página não é de propósito o Base32 do RFC 4648 nem Crockford Base32; esses alfabetos e regras de padding são intenções de busca distintas com outros alvos de interoperabilidade.

O que você envia e o que recebe de volta

Envie um campo de string obrigatório chamado text e um campo mode opcional com encode ou decode. O modo encode trata text como conteúdo UTF-8 simples e devolve uma string result em minúsculas no alfabeto de Zooko sem padding. O modo decode trata text como z-base-32, normaliza maiúsculas e espaços, valida cada símbolo e devolve a string UTF-8 recuperada em result.

Ambas as direções ecoam mode, o text original, result, um campo length da saída principal, rótulos alphabet e charset, um flag padding em false e uma referência curta ao padrão para os clientes confirmarem o perfil. Falhas de validação não consomem saldo pré-pago. Verificações típicas incluem codificar uma palavra curta como Hello, decodificar a string de ida e volta ao mesmo texto e forçar um erro colando um símbolo que o z-base-32 exclui de propósito, como zero ou a letra ele.

Onde o z-base-32 aparece no trabalho real

Identificadores voltados a pessoas que precisam ser lidos ao telefone, escritos no papel ou digitados a partir de uma captura se beneficiam de um alfabeto que evita glifos ambíguos. z-base-32 foi desenhado exatamente para isso: sistemas de código aberto como Mnet e Tahoe-LAFS, e protocolos como ZRTP, adotaram-no para trocar códigos compactos sem as armadilhas do zero versus O e do um versus I de alfabetos mais densos.

Equipes de produto que montam frases de recuperação offline, códigos curtos de autenticação air-gapped ou tokens de uso único no suporte costumam preferir a tabela de Zooko quando a string será falada ou transcrita em vez de apenas lida por máquina. Grupos de engenharia que escrevem testes de interoperabilidade precisam de uma única verdade de referência para encode e decode que bata com as próprias bibliotecas e nunca substitua caracteres ilegais em silêncio.

Autores de currículo que ensinam esquemas de codificação querem uma landing dedicada a z-base-32 em vez de enterrá-lo sob o Base32 do RFC 4648, porque se busca Zooko, Base32 humano e tokens sem padding como intenções separadas. Equipes de suporte que colam códigos multilinha do chat precisam de tolerância a espaços sem aceitar lixo que geraria a chave errada.

Se você precisa do Base32 clássico do RFC 4648 com A-Z e dois a sete, Base64 ou Crockford Base32, trate-os como landings separadas em vez de sobrecarregar esta página do codificador z-base-32.

Códigos de recuperação falados e manuscritos

Codifique segredos curtos como z-base-32 para que os usuários possam lê-los em voz alta ou anotá-los sem confundir zero, ele, vê ou dois com glifos parecidos.

Tokens offline legíveis por pessoas

Produza identificadores compactos sem padding para autenticação air-gapped, códigos de uso único do suporte ou URLs de produto que as pessoas digitam à mão.

Qual alfabeto o z-base-32 usa?

O alfabeto permutado de Zooko ybndrfg8ejkmcpqxot1uwisza345h769. Exclui 0, l, v e 2, e não usa padding com '='.

Como isso difere do Base32 do RFC 4648?

O RFC 4648 usa A-Z e 2-7 com padding opcional de iguais. z-base-32 usa outra ordem de símbolos, remove caracteres ambíguos e omite padding. Não são intercambiáveis.

Posso codificar e decodificar?

Sim. Defina mode como encode (padrão) para transformar texto UTF-8 simples em z-base-32, ou mode como decode para recuperar o texto a partir de uma string z-base-32.

O que acontece se a string tiver um caractere inválido?

Símbolos fora do alfabeto de Zooko nunca são substituídos. Falhas de validação não são cobradas.

Quanto custa?

A ferramenta do navegador é gratuita e roda localmente.

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/base32-zbase

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/base32-zbase \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello"}'
{
  "text": "Hello"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.base32_zbase",
  "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.

O modo de codificação empacota seus bytes no alfabeto ybndrfg8ejkmcpqxot1uwisza345h769; o de decodificação unifica maiúsculas, remove espaços em branco e rejeita qualquer símbolo ilegal com um erro invalid_input claro, para que um caractere digitado errado nunca vire em silêncio um payload incorreto.

Como o z-base-32 empacota bits com o alfabeto de Zooko

Um caractere fora do alfabeto gera invalid_input com a posição e o símbolo ofensor, o modo correto de falha para tokens que pessoas digitam sob pressão. O caminho é empacotamento puro de bits inteiros, sem rede, sem sementes aleatórias e sem carimbos de tempo, de modo que entradas idênticas sempre produzem JSON idêntico.

O que você envia e o que recebe de volta

Quando mode é omitido, encode é o padrão, para que um payload mínimo ainda seja útil. Encode também informa input_bytes; decode informa output_bytes. Text ausente, objetos que não são string, valores de mode não suportados, strings acima do máximo documentado, caracteres ilegais do alfabeto ou bytes decodificados que não são UTF-8 válido falham com invalid_input e uma mensagem clara em inglês. O preço de chamadas API bem-sucedidas é a base publicada de US$ 0,002 por item.

Onde o z-base-32 aparece no trabalho real

Como esta capacidade é um motor de parse puro, o preço da API é a base publicada de US$ 0,002 por item bem-sucedido e validação falha não consome saldo.

Fixtures de interoperabilidade para bibliotecas de Zooko

Gere vetores golden de encode e decode que batem com bibliotecas z-base-32 usadas em ZRTP, sistemas no estilo Tahoe e ferramentas open-source relacionadas.

Ver a documentação completa do KIT →