Base85 RFC 1924
“Hello World” vira 7KPt{PR^XAyM<W em Base85 RFC 1924, o alfabeto de 85 caracteres proposto para escrever um endereço IPv6 de 128 bits em vinte caracteres, aplicado aqui a qualquer texto e sem espaços, aspas ou barras para escapar. 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 World
- Modo de cálculo
- Encode
- Resultado
- 7KPt{PR^XAyM<W
- Entrada
- Hello World
- Base85 (RFC 1924)
- 7KPt{PR^XAyM<W
- Nome do alfabeto
- rfc1924
Implementa Base85 RFC 1924 de forma determinística no motor parse. Informe o valor e o modo se houver e obtenha a conversão exata sem rede.
Um alfabeto pensado para endereços IPv6
O RFC 1924 propôs uma forma compacta de escrever endereços IPv6: tratar o endereço inteiro de 128 bits como um único número e reescrevê-lo na base 85, para que caiba em vinte caracteres imprimíveis em vez da longa forma hexadecimal com dois-pontos. O alfabeto é fixo: os dígitos de 0 a 9, as letras de A a Z e de a a z, e vinte e três sinais como !, #, %, & e ~. Ele deixa de fora de propósito o espaço, as aspas, a vírgula, o ponto, a barra, os dois-pontos, os colchetes e a barra invertida, para que as sequências sejam coladas em terminais e arquivos de configuração sem problemas. Esta ferramenta aplica esse mesmo alfabeto a texto UTF-8 comum.
Como a conversão funciona e onde costuma falhar
Seu texto vira bytes UTF-8, é lido como um único número grande e dividido por 85 repetidas vezes; cada resto escolhe um caractere do alfabeto. Bytes zerados no início viram caracteres 0 no começo, porque o 0 é o primeiro símbolo, e a decodificação os devolve. “Hello World”, com 11 bytes, vira os 14 caracteres 7KPt{PR^XAyM<W. Os erros comuns são colar uma sequência com espaço, vírgula ou aspas, que o decodificador recusa apontando o caractere e a posição, e esperar um endereço IPv6 com dois-pontos: esta página converte texto, não endereços.
O que faz
Codificadores e conversões de base são buscas frequentes. Base85 RFC 1924 aplica UTF-8↔Base85 RFC1924 com validação rígida. Sem estado nem relógio.
Goldens fixam entradas e saídas para oráculo. O formulário web expõe params com rótulos em oito idiomas.
Quando usar
Use Base85 RFC 1924 quando precisar da conversão exata descrita, não de um pacote criptográfico completo. Não substitui cifras com chave. Combine com outras utilidades enc.* num laboratório.
Documente limites e modos no seu produto.
Casos de uso
Aulas com Base85 RFC 1924.
Aulas com Base85 RFC 1924.
Testes unitários de codificação.
Testes unitários de codificação.
Utilitários de pipeline de texto.
Utilitários de pipeline de texto.
Perguntas frequentes
Quais caracteres o Base85 RFC 1924 deixa de fora e por quê?
Ele deixa de fora o espaço, as aspas, a vírgula, o ponto, a barra, os dois-pontos, os colchetes e a barra invertida. Assim as sequências codificadas podem ser coladas em um terminal ou em um arquivo de configuração sem surpresas com aspas.
Por que minha sequência codificada começa com zeros?
Bytes zerados no início dos seus dados viram caracteres 0 no começo, porque o 0 é o primeiro símbolo do alfabeto. Na decodificação, cada um volta a ser um byte zerado e você recupera exatamente os bytes originais.
O que acontece se eu decodificar uma sequência com espaço ou vírgula?
A decodificação para com uma mensagem clara que aponta o caractere e a sua posição. Espaços, vírgulas, aspas, colchetes e qualquer outro símbolo fora do alfabeto de 85 caracteres são recusados, então uma sequência danificada nunca vira outro texto sem aviso.
Para que foi criado o Base85 do RFC 1924?
Para escrever um endereço IPv6 completo de 128 bits em apenas vinte caracteres imprimíveis, em vez da longa forma hexadecimal com dois-pontos. Esta ferramenta aplica o mesmo alfabeto a texto UTF-8; ela não formata endereços IPv6.
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/enc/base85-rfc1924 \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello World"}'const res = await fetch("https://api.kit.forhosting.com/enc/base85-rfc1924", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello World"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/base85-rfc1924",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello World"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/base85-rfc1924", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello World"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello World"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/base85-rfc1924", 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 World"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.base85_rfc1924",
"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
max_chars | 100000 |
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
API US$ 0,002 por sucesso; web grátis com o mesmo núcleo para aulas, testes e utilitários.
O que faz
Erros invalid_input evitam saídas silenciosas erradas.
Como funciona
Opcionais são omitidos, nunca null. Limites de params e cap.json são aplicados no código. Após validar os campos, o núcleo transforma e devolve JSON estável. O preço da API é US$ 0,002 por sucesso documentado.
Quando usar
Sem assinaturas; só cobrança por uso bem-sucedido na API.
Perguntas técnicas
É determinístico?
Sim: mesma entrada, mesma saída.
Usa rede ou IA?
Não; só parse no dispositivo ou Worker.
Entrada inválida?
invalid_input com mensagem clara.
Preço?
API US$ 0,002 por sucesso; web grátis.
Há widget?
Sim, tier A com a mesma lib.js.