Codificador y decodificador Base32

Convierte texto, bytes en hexadecimal o archivos a Base32 y viceversa. Elige el alfabeto RFC 4648, Base32hex, Crockford o z-base-32, y controla el relleno y el uso de mayúsculas o minúsculas.

Se ejecuta por completo en tu navegador. No se sube nada.

Cómo se usa

  1. Elige Codificar para convertir texto en Base32 o Decodificar para convertir Base32 de nuevo en texto.
  2. Elige la Variante. RFC 4648 es la predeterminada y la que usan los secretos TOTP y la mayoría de las bibliotecas.
  3. Escribe o pega la entrada, o abre un archivo. El resultado se actualiza mientras escribes.
  4. Copia el resultado o descárgalo como archivo.

¿Qué es Base32?

Base32 representa datos binarios con 32 caracteres imprimibles. Cada carácter lleva 5 bits, así que cada 5 bytes de entrada se convierten en 8 caracteres de salida. La salida es aproximadamente un 60 % mayor que la entrada, una sobrecarga superior a la de Base64, pero el alfabeto evita las minúsculas y los símbolos que se confunden con facilidad.

El alfabeto estándar definido en RFC 4648 usa las letras A-Z y los dígitos 2-7. Los dígitos 0, 1, 8 y 9 se omiten para que no se confundan con las letras O, I y B. Cuando la longitud de la entrada no es múltiplo de 5 bytes, la salida se rellena con = hasta un múltiplo de 8 caracteres.

Dónde se usa Base32

  • Autenticación de dos factores. Los secretos TOTP y HOTP de las aplicaciones de autenticación (el valor secret= de un enlace otpauth://) son cadenas Base32.
  • Sistemas que no distinguen mayúsculas y minúsculas. Como el alfabeto usa un solo tipo de letra, Base32 se conserva intacto en sistemas de archivos, etiquetas DNS y direcciones de correo electrónico que ignoran las mayúsculas.
  • Códigos que escriben las personas. Las claves de licencia, las direcciones onion y los identificadores cortos usan Base32 para que sean más fáciles de dictar y de escribir.

Si el tamaño importa más que la legibilidad, Base64 es más compacto. Si necesitas identificadores cortos sin caracteres confusos, compara Crockford Base32 y Base58.

Variantes de Base32

VarianteAlfabetoUso habitual
RFC 4648A-Z 2-7Secretos TOTP, uso general
Base32hex0-9 A-VConserva el orden de los bytes originales, DNSSEC NSEC3
Crockford0-9 A-Z sin I, L, O ni UID legibles, ULID
z-base-32minúsculas, reordenadoClaves pensadas para personas, OpenPGP WKD, ZRTP

Base32 en código

# Python
import base64
base64.b32encode(b'hello')        # codificar
base64.b32decode('NBSWY3DP')      # decodificar

// Node.js no incluye Base32; usa un paquete como "hi-base32"
// Go (import "encoding/base32")
base32.StdEncoding.EncodeToString(data)

Especificación

AlfabetoA-Z 2-7
Tamaño de salida8 caracteres por cada 5 bytes (160%)
RellenoCon = hasta un múltiplo de 8 caracteres
EstándarRFC 4648, sección 6
Distingue mayúsculas y minúsculasNo

Ejemplos

Entrada (UTF-8)Salida
Hello, World!JBSWY3DPFQQFO33SNRSCC===
Base64.isIJQXGZJWGQXGS4Y=
你好4S62BZNFXU======

Preguntas frecuentes

¿Base32 distingue entre mayúsculas y minúsculas?

El alfabeto de RFC 4648 se define en mayúsculas, pero este decodificador también acepta minúsculas. Usa la opción Minúsculas si necesitas la salida en minúsculas.

¿Por qué mi cadena Base32 termina con signos =?

Los signos igual son el relleno que completa el último bloque hasta 8 caracteres. Muchos sistemas, incluida la mayoría de las aplicaciones TOTP, aceptan Base32 sin relleno. Desactiva el Relleno para quitarlo.

¿Cuánto ocupa Base32 en comparación con los datos originales?

Cada 5 bytes se convierten en 8 caracteres, así que la salida Base32 ocupa unas 1,6 veces el tamaño de la entrada. Base64 ocupa unas 1,33 veces.

¿Puedo decodificar un secreto TOTP con esta herramienta?

Sí. Pega el secreto en la pestaña Decodificar y pon el Formato de salida en Hexadecimal para ver los bytes de la clave sin procesar. Los espacios del secreto se ignoran.