Hex Codificar y Decodificar

Herramienta gratuita de Hex Codificar y Decodificar en línea. Procesamiento 100% local — tus datos nunca salen de tu dispositivo.

Salida

El resultado se mostrará aquí...

Entrada Codificar

Usage Guide

Acerca de Hex (Hexadecimal)

Hex (Hexadecimal) es un método de codificación que utiliza 16 caracteres (0-9, A-F) para representar datos binarios. Cada carácter hexadecimal representa 4 bits binarios (0-15), por lo que cada byte (8 bits) puede representarse con 2 caracteres hexadecimales. Los datos codificados en Hex ocupan el 200% del tamaño original, más que Base64, pero son más legibles y fáciles de depurar. Hex se usa ampliamente en códigos de color, direcciones MAC, valores hash, direcciones de memoria y otros escenarios, siendo uno de los métodos de codificación más utilizados por los programadores.

Esencial para programadores: Hex es el método de codificación más utilizado por los programadores, empleado para representar colores (#FF5733), valores hash (como SHA-256), direcciones MAC, direcciones de memoria y más. Su legibilidad y facilidad de depuración lo convierten en la primera opción para desarrollo y depuración. Recomendado como primera opción para escenarios de depuración y legibilidad.

Pasos de uso

La codificación y decodificación Hex es muy sencilla:

1. CodificarIngrese texto o suba un archivo, haga clic en el botón 'Codificar' para obtener la cadena codificada en Hex
2. DecodificarIngrese la cadena codificada en Hex, haga clic en el botón 'Decodificar' para recuperar los datos originales
3. Copiar resultadoHaga clic en el botón 'Copiar' para obtener el resultado codificado o decodificado
Protección de privacidad: Todos los cálculos se realizan localmente en su navegador, los datos nunca se suben a servidores, procesamiento completamente sin conexión.

Principio de codificación

La codificación Hex convierte datos binarios a caracteres hexadecimales mediante el siguiente proceso:

1. División de bytesDividir cada byte (8 bits) en dos nibbles de 4 bits
2. MapeoMapear cada nibble (0-15) a un carácter hexadecimal (0-9, A-F)
3. ConcatenaciónConcatenar todos los caracteres hexadecimales en una cadena
Ejemplo: El byte 0xFF (255) se codifica como “FF”, el byte 0x41 (65, carácter 'A') se codifica como “41”. La cadena “Hello” se codifica como “48656C6C6F”.

Variantes del formato Hex

La codificación Hex tiene varias variantes de formato comunes:

MayúsculasUsa letras mayúsculas A-F (ej., FF5733), la más común
MinúsculasUsa letras minúsculas a-f (ej., ff5733), igualmente común
Con prefijoAgrega el prefijo 0x (ej., 0xFF5733) para indicar número hexadecimal
Con separadoresUsa espacios, dos puntos o guiones como separadores (ej., FF:57:33), común en direcciones MAC

Escenarios de aplicación

Hex se usa ampliamente en escenarios que requieren legibilidad y facilidad de depuración:

Códigos de colorColores CSS (#FF5733), valores RGB (rgb(255, 87, 51))
Valores hashLa salida de SHA-256, MD5 y otros algoritmos hash generalmente usa representación Hex
Direcciones MACDirecciones físicas de dispositivos de red (ej., 00:1A:2B:3C:4D:5E)
Direcciones de memoriaDirecciones de memoria durante la depuración de programas (ej., 0x7FFF5FBFF000)
Archivos binariosVisualización y edición de archivos binarios (editores Hex)
UUIDIdentificadores únicos universales (ej., 550e8400-e29b-41d4-a716-446655440000)

FAQ

Q: ¿Cuál es la diferencia entre Hex y Base64?

A: Hex y Base64 son representaciones textuales de datos binarios, pero tienen características diferentes. Hex: 1) Usa 16 caracteres (0-9, A-F). 2) El tamaño codificado es el 200% de los datos originales. 3) Más legible, adecuado para depuración. Base64: 1) Usa 64 caracteres (A-Z, a-z, 0-9, +, /). 2) El tamaño codificado es aproximadamente el 133% de los datos originales. 3) Más compacto, adecuado para transmisión. Consejo de selección: 1) Necesita legibilidad y depuración: use Hex. 2) Necesita transmisión compacta: use Base64. 3) Salida de algoritmos de cifrado: generalmente usa Hex (como SHA-256).

Q: ¿Por qué los valores hash se representan típicamente en Hex?

A: Los algoritmos hash (como SHA-256, MD5) producen datos binarios, generalmente representados en Hex. Razones: 1) Legibilidad: Hex es más legible que binario, fácil de comparar manualmente. 2) Longitud fija: SHA-256 produce 32 bytes, representados como 64 caracteres Hex con longitud fija. 3) Práctica tradicional: Los campos de cifrado y hash usan Hex por tradición. 4) Fácil de depurar: Los desarrolladores pueden copiar, pegar y comparar valores hash fácilmente. Ejemplo: SHA-256(“hello”) = 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824.

Q: ¿Qué son los códigos de color Hex?

A: Los códigos de color Hex representan colores RGB usando notación hexadecimal, con el formato #RRGGBB. Formato: 1) #RRGGBB: 6 dígitos hexadecimales, cada 2 dígitos representan un canal de color (rojo, verde, azul). 2) #RGB: abreviatura de 3 dígitos, cada dígito se repite una vez (ej., #F00 = #FF0000). Ejemplos: 1) #FF0000: Rojo puro (R=255, G=0, B=0). 2) #00FF00: Verde puro (R=0, G=255, B=0). 3) #0000FF: Azul puro (R=0, G=0, B=255). 4) #FFFFFF: Blanco. 5) #000000: Negro. Conversión: Los colores Hex pueden convertirse a RGB (ej., rgb(255, 87, 51)) o HSL (ej., hsl(14, 100%, 60%)).

Q: ¿Por qué las direcciones MAC se representan en Hex?

A: Las direcciones MAC (Media Access Control Address) son direcciones físicas de dispositivos de red, representadas en Hex. Formato: 6 bytes (48 bits), generalmente separados por dos puntos o guiones, como 00:1A:2B:3C:4D:5E o 00-1A-2B-3C-4D-5E. Razones: 1) Compacto: 6 bytes representados por 12 caracteres hexadecimales, más compacto que binario (48 bits) o decimal (número de 14 dígitos). 2) Legible: Hex es más legible que binario, fácil de identificar e ingresar manualmente. 3) Estándar: El estándar IEEE 802 especifica usar Hex para representar direcciones MAC. Ejemplo: 00:1A:2B:3C:4D:5E representa la dirección MAC 0x001A2B3C4D5E.

Q: ¿Cómo usar Hex en JavaScript?

A: JavaScript proporciona múltiples métodos para manejar la codificación Hex. Cadena a Hex:
const str = 'Hello'; const hex = Array.from(str).map(c => c.charCodeAt(0).toString(16).padStart(2, '0')).join(''); // Resultado: '48656c6c6f'
Hex a cadena:
const hex = '48656c6c6f'; const str = hex.match(/.{1,2}/g).map(byte => String.fromCharCode(parseInt(byte, 16))).join(''); // Resultado: 'Hello'
Número a Hex: const hex = (255).toString(16); // 'ff'
Hex a número: const num = parseInt('ff', 16); // 255

Q: ¿Qué es un editor Hex?

A: Un editor Hex es una herramienta para ver y editar archivos binarios, mostrando el contenido del archivo en formato hexadecimal. Características: 1) Ver archivos binarios: Mostrar cada byte de un archivo en formato Hex. 2) Editar archivos binarios: Modificar directamente los valores de bytes en archivos. 3) Buscar y reemplazar: Buscar secuencias de bytes específicas en archivos binarios. 4) Análisis de archivos: Analizar la estructura del archivo, encontrar encabezados de archivo, identificar tipos de archivo. Casos de uso: 1) Ingeniería inversa: Analizar ejecutables, firmware. 2) Recuperación de datos: Reparar archivos corruptos. 3) Modificación de juegos: Modificar guardados y configuraciones de juegos. 4) Investigación de seguridad: Analizar malware. Herramientas comunes: HxD (Windows), Hex Fiend (macOS), xxd (línea de comandos Linux).

Use Cases

Recomendado: Códigos de color CSS

Los códigos de color Hex son la representación de color más utilizada en CSS, con el formato #RRGGBB. Cada 2 dígitos hexadecimales representan un canal de color (rojo, verde, azul), con valores que van de 00-FF (0-255). Los códigos de color Hex son concisos, legibles y el estándar para el desarrollo web. El CSS moderno también admite colores Hex de 8 dígitos (#RRGGBBAA), donde los últimos 2 dígitos representan la transparencia (canal Alpha).

Recommended Configuration:
  • ✅ Hex estándar de 6 dígitos (#FF5733)
  • ✅ Abreviatura de 3 dígitos (#F00 = #FF0000)
  • ✅ Hex de 8 dígitos con transparencia (#FF573380)
  • 💡 Use herramientas de selección de color para generar colores Hex
  • 💡 Considere usar variables CSS para gestionar colores
Recomendado: Representación de valores hash

Los algoritmos hash criptográficos (como SHA-256, MD5) generalmente producen salida en formato Hex. Los valores hash en formato Hex son fáciles de leer, copiar, pegar y comparar, siendo el formato estándar para verificación de integridad de archivos, firmas digitales, almacenamiento de contraseñas y otros escenarios. Por ejemplo, Git usa valores hash SHA-1 (40 dígitos Hex) para identificar commits, y las blockchains usan valores hash SHA-256 (64 dígitos Hex) para identificar bloques.

Recommended Configuration:
  • ✅ Verificación de integridad de archivos (SHA-256)
  • ✅ IDs de commits de Git (SHA-1)
  • ✅ Hashes de bloques de blockchain (SHA-256)
  • ✅ Hashes de contraseñas (bcrypt, Argon2)
  • 💡 Use Hex en minúsculas para consistencia
Recomendado: Direcciones MAC e identificadores de red

Las direcciones MAC (direcciones físicas) usan 6 bytes (48 bits) de representación Hex, con el formato XX:XX:XX:XX:XX:XX o XX-XX-XX-XX-XX-XX. Las direcciones MAC identifican de forma única los dispositivos de red, con los primeros 3 bytes siendo el identificador del fabricante (OUI) y los últimos 3 bytes siendo el número de serie del dispositivo. De manera similar, las direcciones IPv6 también usan representación Hex (ej., 2001:0db8:85a3:0000:0000:8a2e:0370:7334).

Recommended Configuration:
  • ✅ Direcciones MAC (00:1A:2B:3C:4D:5E)
  • ✅ Direcciones IPv6 (2001:db8::1)
  • ✅ Identificadores de dispositivos de red
  • 💡 Use separadores de dos puntos para mejor legibilidad
Recomendado: UUIDs e identificadores únicos

Los UUIDs (Identificadores Únicos Universales) usan representación Hex, con el formato xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx (32 dígitos Hex + 4 guiones). Los UUIDs generan identificadores únicos globales, ampliamente utilizados en claves primarias de bases de datos, sistemas distribuidos, sistemas de archivos y otros escenarios. Los UUIDs tienen múltiples versiones (v1-v5), siendo v4 (generado aleatoriamente) el más común.

Recommended Configuration:
  • ✅ Claves primarias de bases de datos
  • ✅ IDs de sistemas distribuidos
  • ✅ Identificadores de sistemas de archivos
  • ✅ IDs de solicitudes de API
  • 💡 Use UUID v4 (aleatorio) o v7 (marca de tiempo)
Recomendado: Análisis de archivos binarios

Usar editores Hex para ver y editar archivos binarios es un método común en ingeniería inversa, recuperación de datos e investigación de seguridad. Los editores Hex muestran cada byte de un archivo en formato hexadecimal, facilitando el análisis de la estructura del archivo, la búsqueda de encabezados de archivo y la identificación de tipos de archivo. Por ejemplo, los archivos PNG comienzan con 89 50 4E 47 (.PNG), y los archivos JPEG comienzan con FF D8 FF.

Recommended Configuration:
  • ✅ Ingeniería inversa (análisis de ejecutables)
  • ✅ Recuperación de datos (reparación de archivos corruptos)
  • ✅ Análisis de formatos de archivo
  • ✅ Investigación de seguridad (análisis de malware)
  • 💡 Use editores Hex profesionales (HxD, Hex Fiend)
Recomendado: Direcciones de memoria y depuración

Durante la depuración de programas, las direcciones de memoria generalmente se representan en Hex (ej., 0x7FFF5FBFF000). Las direcciones de memoria en formato Hex son fáciles de leer y comparar, y son el formato estándar para depuradores (como GDB, LLDB, WinDbg). Los desarrolladores pueden usar direcciones Hex para ver contenidos de memoria, establecer puntos de interrupción y analizar el comportamiento del programa.

Recommended Configuration:
  • ✅ Depuradores (GDB, LLDB, WinDbg)
  • ✅ Análisis de volcados de memoria
  • ✅ Cálculos de punteros y direcciones
  • ✅ Desarrollo en lenguaje ensamblador
  • 💡 Use el prefijo 0x para indicar números hexadecimales

Recomendaciones de mejores prácticas

  • Los datos codificados en Hex ocupan el 200% del tamaño original, no son adecuados para transmisión de archivos grandes; use Base64 o transmisión binaria en su lugar.
  • Los valores hash generalmente usan Hex en minúsculas para consistencia (ej., Git, blockchain).
  • Los códigos de color CSS usan más comúnmente Hex en mayúsculas (#FF5733), pero las minúsculas (#ff5733) también son aceptables.
  • Las direcciones MAC usan más comúnmente separadores de dos puntos (00:1A:2B:3C:4D:5E) que guiones (00-1A-2B-3C-4D-5E).
  • En JavaScript, use toString(16) para convertir números a Hex, y parseInt(hex, 16) para convertir Hex a números.
  • Los editores Hex son herramientas poderosas para analizar archivos binarios, pero requieren comprensión de formatos de archivo y orden de bytes (big-endian/little-endian).

Discusión y Comentarios

0 comentarios
Yo