Codificador/Decodificador hexadecimal

La codificación hexadecimal representa datos binarios usando 16 símbolos (0-9 y A-F). Cada byte se convierte en dos caracteres hex. Esta herramienta decodifica cadenas hexadecimales para revelar el contenido original, identifica tipos de archivo usando bytes mágicos y proporciona un visor estilo editor hexadecimal para inspección binaria.

Casos de uso comunes

  • Decodificar datos codificados en hex desde APIs y registros
  • Inspeccionar encabezados de archivos binarios y bytes mágicos
  • Analizar cargas útiles de paquetes de red
  • Depurar valores criptográficos (hashes, claves, IVs)
  • Ver datos binarios sin procesar de bases de datos o archivos
  • Convertir volcados hex de herramientas de depuración

Funcionalidades

  • Decodificar cadenas hex en múltiples formatos (simple, con espacios, prefijo 0x, separado por dos puntos, array C)
  • Visor hex con desplazamiento, bytes hex y representación ASCII
  • Detección automática del tipo de contenido decodificado (JSON, XML, texto, etc.)
  • Detección encadenada — detección automática del contenido decodificado con botón "Decodificar como X"
  • Identificación de tipo de archivo usando bytes mágicos para datos binarios
  • Desplazamiento virtual para archivos grandes con carga diferida de bloques
  • Convertir entre formatos hex (simple, con espacios, 0x, dos puntos, array C)
  • Codificar texto a hex en varios formatos

Ejemplos

JSON como hex

Pruébalo →

Una cadena hex que se decodifica a un objeto JSON.

7b226e616d65223a22746573742e6a736f6e227d

Hex con espacios

Pruébalo →

Bytes hex separados por espacios (común en salida de depuración).

48 65 6c 6c 6f 2c 20 57 6f 72 6c 64 21

Encabezado PDF

Pruébalo →

Bytes hex que representan una firma de archivo PDF.

25504446 2d312e34 0a312030 206f626a

Array estilo C

Pruébalo →

Bytes hex formateados como un array C.

0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x21

Estilo dirección MAC

Pruébalo →

Bytes hex separados por dos puntos como una dirección MAC.

de:ad:be:ef:ca:fe

Consejos

  • La codificación hex duplica el tamaño de los datos (cada byte se convierte en 2 caracteres).
  • Bytes mágicos comunes: PDF comienza con 25504446 (%PDF), ZIP con 504B0304.
  • Los datos de imagen (PNG, JPEG, etc.) se detectan automáticamente y usan la herramienta de Análisis de Imagen.
  • El prefijo 0x indica hexadecimal en la mayoría de lenguajes de programación.
  • Las direcciones MAC y UUIDs usan separadores de dos puntos o guiones.
  • Hex no distingue entre mayúsculas y minúsculas: 0xFF es igual a 0xff.

Comprender Codificador/Decodificador hexadecimal

La codificación hexadecimal (hex) representa datos binarios usando notación base 16, donde cada byte se mapea exactamente a dos caracteres del conjunto 0-9 y A-F. Este mapeo directo de byte a texto hace del hex la representación estándar para datos binarios en depuración, criptografía, redes y programación de bajo nivel.

A diferencia de Base64, que oscurece los límites de bytes con su agrupación de 6 bits, cada par de caracteres hex se mapea exactamente a un byte, haciendo trivial la lectura de valores individuales. Las direcciones de memoria, contenidos de registros, volcados de paquetes de red, encabezados de archivos y valores criptográficos se muestran convencionalmente en hex.

Las cadenas hex aparecen en muchos formatos. Hex simple (48656c6c6f) es común en APIs. Hex separado por espacios (48 65 6c 6c 6f) aparece en capturas de paquetes. Hex separado por dos puntos (48:65:6c:6c:6f) se usa para direcciones MAC y huellas digitales de certificados. El prefijo 0x (0x48, 0x65) es el literal hex estándar en C, JavaScript, Python y la mayoría de lenguajes. Los arrays estilo C ({0x48, 0x65}) incrustan datos binarios en código fuente.

La identificación de tipo de archivo depende de bytes mágicos — secuencias hex específicas al inicio de un archivo que identifican su formato. Los PDFs comienzan con 25504446 (%PDF), los PNGs con 89504E47, los ZIPs con 504B0304 y los ejecutables ELF con 7F454C46. Reconocer estas firmas es esencial para depurar código de manejo de archivos y analizar datos binarios.

Hex y Base64 ambos codifican datos binarios como texto, pero hacen diferentes compensaciones. Hex mapea cada byte a 2 caracteres, duplicando el tamaño de los datos (100% de sobrecarga), mientras que Base64 mapea cada 3 bytes a 4 caracteres con solo aproximadamente 33% de sobrecarga. Base64 es más eficiente en espacio para datos grandes, haciéndolo la mejor opción para incrustar contenido binario en formatos de texto. Hex es más legible para inspección a nivel de byte, haciéndolo el estándar para depuración, valores criptográficos y análisis de protocolos donde los valores de bytes individuales importan.

Los bytes mágicos (también llamados firmas de archivo) son secuencias de bytes específicas al inicio de un archivo que identifican su formato independientemente de la extensión del archivo. Los archivos PNG comienzan con 89 50 4E 47, JPEG con FF D8 FF y ZIP con 50 4B 03 04. El comando "file" de Unix depende de los bytes mágicos para detectar tipos de archivo, y la misma técnica se usa en esta herramienta para identificar contenido binario dentro de datos hex.

Hex no distingue entre mayúsculas y minúsculas porque los dígitos A-F representan valores 10-15 independientemente de si están en mayúsculas o minúsculas — 0xFF y 0xff ambos significan decimal 255. La elección entre mayúsculas y minúsculas es puramente convencional: las mayúsculas son comunes en especificaciones y salida de hash, mientras que las minúsculas son comunes en contextos de desarrollo web como colores CSS y codificación URL. El prefijo 0x indica un literal de número hexadecimal en la mayoría de los lenguajes de programación, incluyendo C, C++, Java, JavaScript, Python, Go y Rust. Sin el prefijo, un valor como "10" sería ambiguo entre decimal y hex; escribir 0x10 lo hace inequívocamente hexadecimal (decimal 16).

← Volver a todas las herramientas