Caja de Herramientas

Base64 frente a Hex: tamaño, legibilidad y cuándo usar cada uno

Base64 y hex son codificaciones de binario a texto que permiten transmitir flujos de bytes por protocolos de texto sin problemas. Suelen confundirse, pero difieren mucho en alfabeto, sobrecoste de tamaño y usos: elegir mal desperdicia ancho de banda o rompe la URL por caracteres especiales.

DimensiónBase64Hex (hexadecimal)
Alfabeto64 caracteres: A-Z, a-z, 0-9, + y /, con = como relleno16 caracteres: 0-9 más A-F, siempre dos dígitos por byte
Sobrecoste de tamaño≈ ×4/3 (+33%): tres bytes se convierten en cuatro caracteresFijo ×2 (+100%): cada byte se convierte en dos caracteres
Legibilidad humanaBaja; la salida parece texto aleatorio sin correspondencia directa con los bytesAlta; dos dígitos ordenados por byte se corresponden con volcados de memoria y documentación
Verificación de longitudLa longitud varía según el módulo 3 del original y puede llevar uno o dos = finales; las reglas son enrevesadasLa longitud siempre es el doble del número de bytes; la integridad se comprueba de un vistazo
Seguridad en URLs y rutas+ / y = tienen significado especial en las URLs; hay que usar la variante segura (- y _) o escaparlosSolo caracteres alfanuméricos, seguro de serie en parámetros y nombres de archivo
Usos típicosAdjuntos de correo (MIME), Data URI para imágenes y fuentes incrustadas, carga de JWT, autenticación BasicVisualización de hashes (MD5/SHA), direcciones MAC, códigos de color y vistas hex en depuradores y analizadores

¿Cuándo elegir Base64?

Elige Base64 para mover datos binarios grandes por canales de texto: adjuntos, imágenes incrustadas o cargas de tokens. Su sobrecoste del +33% gana al doble de hex, pero recuerda usar el alfabeto seguro para URLs en la web para que + y / no se escapen mal.

¿Cuándo elegir Hex (hexadecimal)?

Usa hex cuando una persona deba leer, comparar o revisar los bytes a mano: huellas de hash, material de claves, depuración a nivel de byte. Sus reglas transparentes y la ausencia de ambigüedad de relleno lo hacen universal.

Herramientas relacionadas

Preguntas frecuentes

¿Base64 es un algoritmo de cifrado?

No. Base64 es solo una codificación: reversible sin clave y descifrable por cualquiera. Protege los datos con cifrados reales como AES; Base64 solo permite que el criptograma viaje por canales de texto.

¿Por qué los hashes se muestran en hexadecimal?

Porque un hash son bytes de longitud fija y hex muestra exactamente dos dígitos por byte: longitudes ordenadas y fáciles de comparar. Base64 sería más corto pero sus convenciones de alineación varían según la implementación y generan confusión.

¿Qué codificación debo usar dentro de una URL?

Prefiere hex o la variante Base64 segura para URLs (- y _ en lugar de + y /, sin relleno). El Base64 estándar se corrompe en parámetros: + se vuelve espacio y / corta la ruta.

Para saber más

Un error que conviene repetir: Base64 no es cifrado. Solo es otra notación para los mismos bytes, y cualquiera con la cadena puede restaurarla al instante; los datos sensibles deben cifrarse primero y codificarse después. Ambas codificaciones también se combinan: cifra un archivo con AES, envuelve el resultado en Base64 para transportarlo en JSON y luego revísalo byte a byte en hex durante la depuración. Nuestro sitio ofrece herramientas de códec Base64 y conversión hexadecimal totalmente locales, útiles para comprobar las diferencias entre ambas.

← Volver a las comparaciones