Codificar e decodificar Base32
Codifique texto em Base32 ou decodifique de volta com o alfabeto padrão de A a Z e de 2 a 7: «Hello, Base32!» vira JBSWY3DPFQQEEYLTMUZTEII=. Acentos e emojis funcionam, e uma entrada danificada é recusada em vez de decodificada pela metade. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Texto
- Hello, Base32!
- Modo de cálculo
- Encode
- Produção
- JBSWY3DPFQQEEYLTMUZTEII=
Este codificador e decodificador Base32 converte texto Unicode usando o alfabeto padrão RFC 4648, formado pelas letras maiúsculas de A a Z e pelos dígitos de 2 a 7. Selecione codificar para transformar texto UTF-8 em Base32 com preenchimento padrão ou decodificar para recuperar o conteúdo original. Na decodificação, a ferramenta valida o alfabeto, o preenchimento, o comprimento, os bits finais não utilizados e o resultado UTF-8, em vez de produzir conteúdo corrompido sem aviso. A conversão é determinística, não usa rede e retorna um resultado fácil de copiar.
Como o Base32 da RFC 4648 representa texto
Base32 é uma codificação de dados binários como texto: ela não criptografa, compacta nem oculta informações. No modo de codificação, o conversor primeiro representa a string fornecida como bytes UTF-8. Em seguida, lê esses bytes como um fluxo contínuo de bits e divide o fluxo em grupos de cinco bits.
Cada valor seleciona um símbolo do alfabeto RFC 4648, composto pelas letras maiúsculas de A a Z e pelos dígitos de 2 a 7. Cinco bytes contêm quarenta bits e correspondem exatamente a oito símbolos Base32. Quando o bloco final é menor, bits zero completam o último símbolo e sinais de igual preenchem a saída até um limite de oito caracteres.
A ferramenta sempre gera o alfabeto padrão e o preenchimento canônico, permitindo que você compare o resultado diretamente com bibliotecas compatíveis. Unicode é convertido antes do processamento dos bits; assim, letras acentuadas, escritas não latinas e emojis mantêm representações estáveis. A mesma entrada no mesmo modo sempre gera exatamente a mesma saída.
Validação e comportamento de erro ao decodificar
O modo de decodificação trata a entrada como Base32 RFC 4648, não como um token apenas semelhante. Letras maiúsculas e minúsculas são aceitas, mas todo símbolo de dados deve pertencer a A-Z ou 2-7. O sinal de igual só pode aparecer como preenchimento final, e sua quantidade precisa corresponder ao número de símbolos no último bloco.
Comprimentos incapazes de representar bytes inteiros também são rejeitados. O conversor verifica ainda os bits finais não utilizados: codificadores compatíveis os deixam em zero, enquanto aceitar outros valores permitiria várias grafias para os mesmos bytes. Depois da recuperação, um decodificador UTF-8 estrito confirma que os bytes formam texto, pois esta capacidade promete uma string, não um arquivo binário arbitrário.
Caractere inválido, preenchimento deslocado, comprimento impossível, bit residual diferente de zero ou UTF-8 malformado gera um erro de entrada inválida sem resultado parcial. Essa validação rigorosa protege a conferência de segredos, configurações copiadas e testes de interoperabilidade. Base32 sem preenchimento também é aceito quando sua estrutura é válida.
Uso em ferramentas e fluxos automatizados
Para converter, informe o texto e escolha codificar ou decodificar. A codificação retorna uma string Base32 preenchida no campo de saída; a decodificação devolve nesse mesmo campo a string Unicode recuperada. Base32 é útil quando um valor precisa passar por sistemas com conjunto limitado de caracteres, como registros de provisionamento, materiais de configuração legíveis ou armazenamentos que ignoram diferenças entre maiúsculas e minúsculas.
Ele aparece com frequência em segredos de autenticadores, embora codificar um segredo não o proteja e controles de acesso continuem necessários. Você também pode criar vetores de referência para outra linguagem, conferir dados copiados da documentação ou inspecionar um valor antes de importá-lo. O algoritmo não usa rede, aleatoriedade, relógio, estado de conta nem serviço externo, portanto é adequado a builds e testes repetíveis.
Casos de uso
Preparar valores de configuração interoperáveis
Codifique texto Unicode com alfabeto e preenchimento padrão antes de colocá-lo em configurações textuais ou enviá-lo a um sistema compatível.
Validar material Base32 copiado
Decodifique um valor colado e receba um erro claro se houver símbolo, preenchimento, bit final ou resultado UTF-8 inválido.
Criar vetores de teste entre linguagens
Gere entradas e saídas estáveis para comparar implementações Base32 no navegador, no servidor e na linha de comando.
Perguntas frequentes
Qual alfabeto Base32 este conversor usa?
Ele usa o alfabeto Base32 padrão da RFC 4648: letras maiúsculas de A a Z e dígitos de 2 a 7, com sinais de igual no preenchimento.
A decodificação aceita letras minúsculas?
Sim. As letras são normalizadas para maiúsculas antes da decodificação; caracteres fora do alfabeto RFC 4648 são rejeitados.
Base32 é criptografia?
Não. Base32 é uma representação reversível de bytes, não criptografia nem hash. Quem tiver o valor codificado poderá decodificá-lo.
O que ocorre com um caractere inválido?
A solicitação falha com um erro de entrada inválida que informa o caractere e sua posição; nenhum texto parcial é devolvido.
Por que o resultado termina com sinais de igual?
É o preenchimento. O Base32 trabalha em blocos de oito símbolos, porque cinco bytes ocupam exatamente oito; quando o último bloco é mais curto, os sinais de igual completam o bloco, como no exemplo que termina em EII=.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
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.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/web/base32-convert \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello, Base32!","mode":"encode"}'const res = await fetch("https://api.kit.forhosting.com/web/base32-convert", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello, Base32!",
"mode": "encode"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/base32-convert",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello, Base32!",
"mode": "encode"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/base32-convert", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello, Base32!","mode":"encode"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello, Base32!","mode":"encode"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/base32-convert", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"text": "Hello, Base32!",
"mode": "encode"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.base32_convert",
"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.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Limites
timeout_sec | 30 |
max_crawl_pages | 25 |
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Uso em ferramentas e fluxos automatizados
A conversão interativa funciona no navegador; cada item automatizado pela API custa US$ 0,002.
Perguntas técnicas
Quanto custa uma conversão pela API?
Cada item processado com sucesso pela API usa o preço-base publicado de US$ 0,002. A conversão interativa está disponível no navegador.