ForHosting KIT · Ferramentas para dev

Codificador Crockford Base32

“Hello” vira 91JPRV3F em Crockford Base32, um alfabeto sem I, L, O nem U, para que números de série e códigos de suporte resistam à leitura por telefone e à digitação manual. Um símbolo de verificação opcional detecta um caractere digitado errado. 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
91JPRV3F
Comprimento
8
Bytes de entrada
5
Alfabeto
Crockford

Crockford Base32 é um alfabeto de codificação prático pensado para quem lê e digita identificadores à mão. Remove os símbolos que mais geram confusão—I, L, O e U—para que um número de série, um token curto ou um código de suporte sobrevivam a clientes de e-mail, anotações em papel e leituras por telefone. Este codificador e decodificador Crockford Base32 converte texto UTF-8 para esse alfabeto e de volta, aceita as tolerâncias humanas usuais (minúsculas, hífens, O como zero, I e L como um) e pode acrescentar ou verificar o símbolo de verificação opcional módulo 37 de Crockford quando você precisar detectar erros de transcrição.

O que é Crockford Base32 e como difere do Base32 de RFC 4648

O Base32 padrão (RFC 4648) usa A–Z e 2–7 com preenchimento de sinais de igual. Esse alfabeto serve para formatos de rede e MIME, mas é desajeitado para humanos: I maiúsculo parece um, O maiúsculo parece zero, e U atrapalha códigos ditos em voz alta. O alfabeto Base32 de Douglas Crockford mantém trinta e dois símbolos—dígitos de zero a nove mais A a Z sem I, L, O e U—para que cada glifo restante seja fácil de imprimir, ler em voz alta e digitar.

A decodificação é deliberadamente tolerante: hífens podem separar grupos para legibilidade, maiúsculas e minúsculas não importam, a letra O é tratada como dígito zero, e as letras I e L como dígito um. Não há preenchimento com sinais de igual; grupos finais incompletos de cinco bits ainda são emitidos como símbolo final na codificação, alinhado a implementações Crockford comuns para strings curtas.

Um símbolo de verificação opcional de um conjunto de trinta e sete símbolos (os trinta e dois de dados mais asterisco, til, cifrão, igual e U) é o resto do valor da string de símbolos módulo trinta e sete. Acrescente-o quando rótulos forem redigitados; verifique-o na decodificação quando check for true.

Esta capacidade implementa esse contrato centrado em humanos sobre texto UTF-8 com empacotamento de bits determinístico, de forma que a mesma entrada sempre produz a mesma string Crockford e a decodificação inversa restaura os bytes originais quando a carga é UTF-8 válido.

Onde um codificador Crockford Base32 realmente vale a pena

Equipes de produto e operações usam Crockford Base32 para identificadores públicos curtos que o suporte precisa ler ao telefone sem soletrar I versus um em cada caractere. Armazéns e etiquetas de ativos se beneficiam de grupos com hífen e de um símbolo de verificação opcional que captura um dígito digitado errado antes de escolher o local errado.

Desenvolvedores de tokens compactos no estilo ULID ou personalizados querem um codificador com o alfabeto Crockford que as pessoas esperam, não o conjunto 2–7 de RFC 4648, e um decodificador que aceite colagens bagunçadas de chat ou PDF. Exercícios de aula e entrevistas sobre codificações legíveis precisam de um oráculo determinístico que rejeite U nos dados e explique divergências de verificação em vez de devolver lixo.

Mantenha cargas modestas, fixe strings de result em testes automatizados e obtenha Crockford Base32 reproduzível para rótulos, códigos de suporte e workers de borda sem montar uma biblioteca de alfabeto própria.

Códigos de suporte e tickets legíveis

Codifique referências curtas para agentes lerem em voz alta sem confusões I/L/O; decodifique colagens com hífens ou minúsculas.

Pipelines de tokens e identificadores

Gere e verifique cargas Crockford Base32 em scripts e workers com a mesma lógica pura da ferramenta gratuita do navegador.

Que alfabeto o Crockford Base32 usa?

Dígitos 0–9 e letras A–Z excluindo I, L, O e U (trinta e dois símbolos). A decodificação aceita minúsculas, hífens, O como 0 e I/L como 1.

Como isso difere do Base32 de RFC 4648?

RFC 4648 usa A–Z e 2–7 com preenchimento '='. Crockford remove letras ambíguas, usa 0–9 e outro conjunto de letras, omite preenchimento e oferece símbolo de verificação opcional.

O que acontece se eu enviar um caractere inválido?

U não é válido no alfabeto de dados (só pode aparecer como símbolo de verificação).

Para que serve o símbolo de verificação do Crockford?

É um caractere extra: o resto da divisão do valor do código por 37, tirado dos 32 símbolos de dados mais *, ~, $, = e U. Acrescente-o em etiquetas que alguém vai redigitar; ao decodificar com a verificação ligada, um último caractere errado faz a decodificação falhar.

Posso decodificar um código com hifens ou em letras minúsculas?

Sim. Os hifens entre grupos são ignorados, tanto faz maiúscula ou minúscula, a letra O é lida como zero e as letras I e L como um, então um texto colado de um chat ou de um PDF decodifica normalmente. A letra U é recusada dentro dos dados.

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-crockford

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

A mesma lógica pura de parse alimenta a ferramenta gratuita do navegador e o caminho de API cobrado, de modo que scripts de estudo, etiquetas de inventário e workers de produção nunca discordam de um caractere. Entrada malformada falha com invalid_input e uma mensagem clara que nomeia o símbolo inválido ou a divergência de verificação, em vez de corrupção silenciosa.

Contrato de entrada, formato da resposta e comportamento de erro

Texto vazio codifica para resultado vazio. O comprimento é limitado para que colagens excessivas falhem cedo. Validação falha não é cobrada. Envie por POST um corpo JSON com o campo string obrigatório text e os opcionais mode e check. Mode é encode ou decode e o padrão é encode; os aliases op, operation e direction são aceitos. Check é um booleano com padrão false; quando true na codificação, a API anexa o símbolo de verificação Crockford e o devolve como check_symbol; quando true na decodificação, o caractere final deve coincidir com o resto módulo trinta e sete ou a tarefa falha com invalid_input. Em encode bem-sucedido o corpo inclui mode, o text original, result (a string Crockford), length, input_bytes, alphabet Crockford, resumo de charset, flag check e rótulo standard. Em decode bem-sucedido você obtém mode, text, result (string UTF-8), length, output_bytes, os mesmos metadados de alfabeto e, quando check foi pedido, check_verified mais o check_symbol aprovado. Decodificar sem check trata a string inteira como dados após remover hífens e aplicar aliases O/I/L; qualquer caractere fora do alfabeto de dados—incluindo um U solto na carga—gera invalid_input com posição e caractere. Mode inválido ou check não booleano também falham com invalid_input. Combine encode e decode nos testes com check true e false para que goldens fixem alfabeto, aliases e aritmética de verificação entre runtimes.

Onde um codificador Crockford Base32 realmente vale a pena

Como a implementação é parse puro de nível A, cada chamada bem-sucedida custa o preço base publicado US$ 0,002 sem tokens de modelo e sem rede de saída.

Etiquetas de ativo com símbolo de verificação opcional

Imprima rótulos Crockford com check=true para que um único erro de digitação falhe na verificação antes de mover o inventário para o local errado.

O que a opção check faz?

Na codificação, check=true anexa um símbolo de verificação módulo 37 do conjunto de trinta e sete símbolos. Na decodificação, check=true exige esse símbolo final e rejeita divergências.

Quanto custa o codificador Crockford Base32?

A ferramenta do navegador é gratuita. Pedidos de API usam saldo pré-pago KIT a US$ 0,002 por chamada bem-sucedida; entrada inválida não é cobrada.

Ver a documentação completa do KIT →