Qué es el MD5? (Algoritmo de digestión de mensajes MD5)

Qué es el MD5? (Algoritmo de digestión de mensajes MD5)

Algunos enlaces en MasterTutoriales pueden ser afiliados, los enlaces pueden hacernos ganar una comisión. Lee la Política de Afiliados para más información.

MD5 (técnicamente llamado Algoritmo de Digestión de Mensajes MD5) es una función de hash criptográfica cuyo principal propósito es verificar que un archivo no ha sido alterado.

En lugar de confirmar que dos conjuntos de datos son idénticos mediante la comparación de los datos en bruto, MD5 lo hace produciendo una suma de comprobación en ambos conjuntos y luego comparando las sumas de comprobación para verificar que son iguales.

MD5 tiene ciertas fallas, por lo que no es útil para aplicaciones de encriptación avanzadas, pero es perfectamente aceptable usarlo para verificaciones de archivos estándar.

El Verificador de Integridad de Suma de Comprobación de Archivos de Microsoft (FCIV) es una calculadora gratuita que puede generar la suma de comprobación MD5 a partir de archivos reales y no sólo de texto.

Vea nuestro artículo sobre cómo verificar la integridad de los archivos en Windows con FCIV para aprender a usar este programa de línea de comandos.

Una forma fácil de obtener el hash MD5 de una cadena de letras, números y símbolos es con la herramienta Miracle Salad MD5 Hash Generator tool.

También existen muchas otras, MD5 Hash Generator, PasswordsGenerator, y OnlineMD5.

Cuando se utiliza el mismo algoritmo hash, se producen los mismos resultados.

Esto significa que puedes usar una calculadora MD5 para obtener la suma de comprobación MD5 de algún texto en particular y luego usar una calculadora MD5 totalmente diferente para obtener exactamente los mismos resultados.

Esto puede repetirse con cada herramienta que genere una suma de comprobación basada en la función de hash MD5.

Historia y vulnerabilidades del MD5

El MD5 fue inventado por Ronald Rivest, pero es sólo uno de sus tres algoritmos.

La primera función de hachís que desarrolló fue el MD2 en 1989, que fue construido para computadoras de 8 bits.

Aunque MD2 sigue en uso, no está pensado para aplicaciones que necesiten un alto nivel de seguridad, ya que se demostró que es vulnerable a varios ataques.

MD2 fue reemplazado por MD4 en 1990. MD4 fue hecho para máquinas de 32 bits y era mucho más rápido que el MD2, pero también se demostró que tenía debilidades y ahora es considerado obsoleto por el Grupo de Tareas de Ingeniería de Internet.

El MD5 fue lanzado en 1992 y también fue construido para máquinas de 32 bits. MD5 no es tan rápido como MD4 pero se considera más seguro que las implementaciones anteriores de MDx.

Aunque MD5 es más seguro que MD2 y MD4, se han sugerido como alternativa otras funciones criptográficas de hash, como SHA-1, ya que se ha demostrado que MD5 también tiene fallas de seguridad.

El Instituto de Ingeniería de Software de la Universidad Carnegie Mellon tiene esto que decir sobre MD5:

Los desarrolladores de software, las Autoridades de Certificación, los propietarios de sitios web y los usuarios deben evitar el uso del algoritmo MD5 en cualquier capacidad.

Como lo han demostrado investigaciones anteriores, debe ser considerado criptográficamente roto e inadecuado para su uso posterior.

En 2008, el MD6 se propuso al Instituto Nacional de Normas y Tecnología como alternativa al SHA-3. Puede leer más sobre esta propuesta aquí.

Más información sobre el Hash MD5

Los hashes de MD5 tienen una longitud de 128 bits y normalmente se muestran en su equivalente en valor hexadecimal de 32 dígitos.

Esto es cierto sin importar cuán grande o pequeño sea el archivo o el texto.

He aquí un ejemplo:

  • Texto simple: Esto es una prueba.
  • Valor hexadecimal: 120EA8A25E5D487BF68B5F7096440019

Cuando se añade más texto, el hash se traduce a un valor totalmente diferente pero con el mismo número de caracteres:

  • Texto simple: Esta es una prueba para mostrar cómo la longitud del texto no importa.
  • Valor hexadecimal: 6c16fcac44da359e1c3d81f19181735b

De hecho, incluso una cadena con cero caracteres tiene un valor hexadecimal de d41d8cd98f00b204e9800998ecf8427e, y el uso de un solo punto hace que este valor sea: 5058f1af8388633f609cadb75a75dc9d.

Las sumas de verificación MD5 están construidas para ser irreversibles, lo que significa que no se puede mirar la suma de verificación e identificar los datos originales introducidos.

Por ejemplo, aunque a = 0cc175b9c0f1b6a831c399e269772661 y p = 83878c91171338902e0fe0fb97a8c47a, la combinación de las dos para hacer ap produce una suma de comprobación totalmente diferente y no relacionada: 62c428533830d84fd8bc77bf402512fc, que no se puede separar para revelar ninguna de las dos letras.

Dicho esto, hay muchos “desencriptadores” MD5 que se anuncian como capaces de desencriptar un valor MD5.

Sin embargo, lo que realmente sucede con un desencriptador, o “convertidor inverso MD5”, es que crean la suma de comprobación de muchos valores y luego te permiten buscar tu suma de comprobación en su base de datos para ver si tienen una coincidencia que pueda mostrarte los datos originales.

MD5Decrypt y MD5 Decrypter son dos herramientas gratuitas en línea que sirven como búsquedas inversas MD5 pero solo funcionan para palabras y frases comunes.

Amazon y el logotipo de Amazon son marcas comerciales de Amazon.com, Inc. o sus afiliados.

Jonathan Terreo

Jonathan Terreo