Codificar y decodificar Base32
Codifique texto en Base32 o decodifíquelo con el alfabeto estándar de la A a la Z y del 2 al 7: «Hello, Base32!» se convierte en JBSWY3DPFQQEEYLTMUZTEII=. Admite tildes y emojis, y una entrada dañada se rechaza en lugar de decodificarse a medias. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Texto
- Hello, Base32!
- Modo de cálculo
- Encode
- Producción
- JBSWY3DPFQQEEYLTMUZTEII=
Este codificador y decodificador Base32 convierte texto Unicode con el alfabeto estándar RFC 4648, formado por las letras mayúsculas de la A a la Z y los dígitos del 2 al 7. Seleccione codificar para obtener Base32 con relleno estándar o decodificar para recuperar el texto original. Al decodificar, la herramienta valida el alfabeto, el relleno, la longitud, los bits finales sin usar y el resultado UTF-8, en vez de devolver contenido dañado sin advertirlo. La conversión es determinista, no necesita red y ofrece un resultado fácil de copiar.
Cómo representa texto Base32 según RFC 4648
Base32 es una codificación de binario a texto: no cifra, comprime ni oculta información. En el modo de codificación, el convertidor representa primero la cadena suministrada como bytes UTF-8. Después lee esos bytes como un flujo continuo de bits y lo divide en grupos de cinco bits.
Cada valor de cinco bits selecciona un símbolo del alfabeto RFC 4648, compuesto por las letras mayúsculas de la A a la Z y los dígitos del 2 al 7. Cinco bytes de entrada contienen cuarenta bits y corresponden exactamente a ocho símbolos Base32. Si el bloque final es más corto, se añaden bits cero para completar el último símbolo y signos igual para llevar el resultado hasta un límite de ocho caracteres.
La herramienta siempre genera el alfabeto estándar y un relleno canónico, por lo que usted puede comparar la salida directamente con bibliotecas compatibles. Unicode se convierte antes de procesar los bits; así, letras acentuadas, escrituras no latinas y emojis mantienen una representación estable. La misma entrada y el mismo modo siempre producen la misma salida.
Validación y errores durante la decodificación
El modo de decodificación interpreta la entrada como Base32 RFC 4648, no como un token vagamente parecido. Se admiten letras mayúsculas o minúsculas, pero cada símbolo de datos debe pertenecer al intervalo A-Z o 2-7. El signo igual solo se acepta como relleno final y su cantidad debe concordar con el número de símbolos del último bloque.
También se rechazan longitudes que no pueden representar bytes completos. El convertidor comprueba además los bits finales no utilizados: un codificador conforme los deja en cero, mientras que aceptar otros valores permitiría varias escrituras para la misma secuencia. Una vez recuperados los bytes, un decodificador UTF-8 estricto verifica que formen texto, porque esta capacidad devuelve cadenas y no archivos binarios arbitrarios.
Cualquier carácter no permitido, relleno mal situado, longitud imposible, bit final distinto de cero o secuencia UTF-8 defectuosa produce un error de entrada inválida sin resultados parciales. Esta severidad resulta útil al validar secretos, configuraciones copiadas y pruebas de interoperabilidad. También se admite Base32 sin relleno cuando su estructura es válida.
Uso en herramientas y procesos automatizados
Para realizar una conversión, indique el texto y elija codificar o decodificar. El primer modo devuelve una cadena Base32 con relleno en el campo de salida; el segundo devuelve en ese mismo campo la cadena Unicode recuperada. Base32 es práctico cuando un valor debe atravesar sistemas con un repertorio de caracteres limitado, como registros de aprovisionamiento, material de configuración legible o almacenes que no distinguen mayúsculas.
Es frecuente en secretos de autenticadores, aunque codificar un secreto no lo protege y siguen siendo necesarios controles de acceso. Usted también puede crear vectores de referencia para otra implementación, verificar datos copiados de documentación o inspeccionar un valor antes de importarlo. El algoritmo no usa red, azar, reloj, estado de cuenta ni servicios externos, por lo que encaja en compilaciones y pruebas repetibles.
Qué puede hacer con ella
Preparar valores de configuración interoperables
Codifique texto Unicode con el alfabeto y relleno estándar antes de guardarlo en una configuración de texto o intercambiarlo con otro sistema compatible.
Validar material Base32 copiado
Decodifique un valor pegado y reciba un error claro si contiene un símbolo, relleno, bit final o resultado UTF-8 no válido.
Crear vectores de prueba entre lenguajes
Genere entradas y salidas estables para comparar implementaciones Base32 en navegadores, servidores y herramientas de línea de comandos.
Preguntas frecuentes
¿Qué alfabeto Base32 utiliza este convertidor?
Utiliza el alfabeto Base32 estándar RFC 4648: letras mayúsculas de la A a la Z y dígitos del 2 al 7, con signos igual como relleno de salida.
¿El modo de decodificación acepta minúsculas?
Sí. Las minúsculas se normalizan a mayúsculas antes de decodificar; los caracteres ajenos al alfabeto RFC 4648 se rechazan.
¿Base32 es un sistema de cifrado?
No. Base32 es una representación reversible de bytes, no cifrado ni hash. Cualquier persona que disponga del valor puede decodificarlo.
¿Qué ocurre si hay un carácter inválido?
La solicitud falla con un error de entrada inválida que identifica el carácter y su posición; no se devuelve texto decodificado parcial.
¿Por qué el resultado termina con signos de igual?
Son relleno. Base32 trabaja en bloques de ocho símbolos, porque cinco bytes ocupan exactamente ocho; cuando el último bloque es más corto, los signos de igual lo completan, como en el ejemplo que termina en EII=.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
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)Ejemplo de solicitud
{
"text": "Hello, Base32!",
"mode": "encode"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.base32_convert",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
timeout_sec | 30 |
max_crawl_pages | 25 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Uso en herramientas y procesos automatizados
La conversión interactiva funciona en el navegador; cada elemento automatizado mediante API cuesta $0.002.
Preguntas técnicas
¿Cuánto cuesta una conversión por API?
Cada elemento procesado correctamente mediante API utiliza el precio base publicado de $0.002. La conversión interactiva está disponible en el navegador.