¿Qué es la calculadora de hash MD5?
La calculadora de hash MD5 genera el resumen de mensaje MD5 de 128 bits de cualquier texto que introduzcas. El algoritmo MD5 (Message-Digest Algorithm 5, definido en el RFC 1321) toma una entrada de longitud arbitraria y produce una huella hexadecimal fija de 32 caracteres. La misma entrada siempre da como resultado el mismo hash, mientras que basta con cambiar un solo carácter para obtener un resultado completamente distinto.
Cómo usarla
Escribe o pega tu texto en el cuadro de entrada y envíalo. La calculadora codifica el texto en bytes UTF-8, aplica el algoritmo MD5 y devuelve el resumen hexadecimal en minúsculas, junto con la longitud de la entrada en caracteres y su tamaño en bytes UTF-8. Deja el cuadro vacío para ver el conocido hash de la cadena vacía.
La fórmula explicada
MD5 se basa en una construcción de Merkle–Damgård. El mensaje se rellena con un único byte 0x80 y, a continuación, con ceros, hasta que su longitud sea 56 mód 64 bytes; por último se añade la longitud original en bits como valor de 64 bits en formato little-endian. El mensaje rellenado se divide en bloques de 512 bits, cada uno procesado en 64 operaciones repartidas en cuatro rondas que emplean funciones no lineales, constantes por paso derivadas de sin y rotaciones a la izquierda. Las cuatro palabras de estado de 32 bits (A, B, C, D) se inicializan con valores semilla fijos y se actualizan en cada bloque; la concatenación final de estas palabras en little-endian constituye el resumen.
Ejemplo práctico
La cadena vacía ("") tiene cero bytes. Tras el relleno se convierte en un único bloque de 512 bits, y MD5 devuelve d41d8cd98f00b204e9800998ecf8427e. El texto "hello" (5 bytes) produce el hash 5d41402abc4b2a76b9719d911017c592.
Preguntas frecuentes
¿Es seguro MD5? No. MD5 está roto desde el punto de vista criptográfico: es fácil generar colisiones. Úsalo solo para sumas de verificación y huellas sin fines de seguridad, nunca para contraseñas ni firmas.
¿Por qué el recuento de bytes difiere del de caracteres? Los caracteres que no son ASCII ocupan más de un byte en UTF-8, así que una cadena con un emoji de 3 caracteres puede equivaler a varios bytes.
¿Importan las mayúsculas y minúsculas en la entrada? Sí. "Hello" y "hello" generan hashes totalmente diferentes.