Saltar al contenido
🛠️ToolsShed

Codificador/Decodificador Base32

Codifica y decodifica texto usando Base32.

Acerca de esta herramienta

Base32 es un esquema de codificación binario a texto que convierte datos sin procesar en un alfabeto de 32 caracteres (A-Z y 2-7), permitiendo que la información binaria se transmita de forma segura a través de sistemas basados en texto. A diferencia de Base64, que es más compacto, Base32 prioriza la solidez y la legibilidad. Su conjunto de caracteres limitado evita confusiones entre letras similares (como 'O' y '0') y funciona de manera confiable en diferentes codificaciones de caracteres. Base32 es particularmente valioso en sistemas de autenticación (tokens TOTP para autenticación de dos factores), archivos de zonas DNS, sistemas de nomenclatura de archivos y en cualquier lugar donde la representación de datos segura e inequívoca sea fundamental.

Para usar esta herramienta, pegue o escriba sus datos en el campo de entrada y seleccione 'Codificar' para convertir texto sin procesar o datos binarios al formato Base32, o 'Decodificar' para convertir texto codificado en Base32 a su forma original. La herramienta maneja sin problemas tanto entradas de texto como binarias, procesando automáticamente los datos y mostrando el resultado al instante. Los casos de uso comunes incluyen generar o verificar códigos de autenticación de dos factores, incrustar datos de forma segura en URLs, convertir archivos binarios para almacenamiento o transmisión, y garantizar la integridad de los datos al mover información entre sistemas con diferentes soportes de caracteres.

Una ventaja de Base32 sobre otras codificaciones es que no distingue mayúsculas de minúsculas: las versiones en mayúsculas y minúsculas se decodifican de manera idéntica, lo que reduce errores de transcripción en la entrada manual. La codificación expande el tamaño de los datos en aproximadamente un 60%, que es más grande que Base64 pero sigue siendo manejable para la mayoría de las aplicaciones. Si está trabajando con aplicaciones de autenticación, distribuye códigos QR con datos codificados o necesita una codificación fácil para el usuario que minimice la ambigüedad, Base32 suele ser la opción ideal.

Preguntas Frecuentes

Implementación de Código

import base64

# Encode bytes to Base32
data = b"Hello, World!"
encoded = base64.b32encode(data).decode()
print("Encoded:", encoded)  # JBSWY3DPEB3W64TMMQ======

# Decode Base32 back to bytes
decoded = base64.b32decode(encoded)
print("Decoded:", decoded.decode())  # Hello, World!

# Base32 for TOTP secret generation
import os
totp_secret = base64.b32encode(os.urandom(20)).decode().rstrip("=")
print("TOTP Secret:", totp_secret)  # e.g. JBSWY3DPEB3W64TM

# Decode without padding (common in authenticator apps)
def b32decode_nopad(s: str) -> bytes:
    pad = (8 - len(s) % 8) % 8
    return base64.b32decode(s.upper() + "=" * pad)

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.