Lo que todo esto significa realmente el hash MD5 significa [tecnología explicada]

Lo que todo esto significa realmente el hash MD5 significa [tecnología explicada] / Cultura web

En un artículo reciente sobre cómo verificar si se vio afectado por el incidente de piratería de Gawker. Cómo averiguar si su dirección de correo electrónico se filtró a través de la base de datos de Gawker. Cómo saber si su dirección de correo electrónico se filtró a través de la base de datos de Gawker. Lea más dirección de correo electrónico en un hash MD5.

Recibimos algunas preguntas de los lectores que preguntaban exactamente qué estaba pasando y por qué era necesario este proceso. No es nuestro estilo dejarlos haciendo preguntas, así que aquí hay un resumen completo de MD5, hash y una pequeña descripción general de las computadoras y la criptografía..

Hash criptográfico

MD5 significa METROessage reEl algoritmo 5 de Igest, y fue inventado por el célebre criptógrafo estadounidense Ronald Rivest en 1991 para reemplazar el antiguo estándar MD4. MD5 es simplemente el nombre de un tipo de función de hash criptográfico que Ron creó, desde el '91.

La idea detrás del hash criptográfico es tomar un bloque de datos arbitrario y devolver un tamaño fijo. “picadillo” valor. Puede ser cualquier dato, de cualquier tamaño, pero el valor de hash siempre será fijo. Pruébalo por ti mismo aquí.

El hash criptográfico tiene varios usos y existe una gran cantidad de algoritmos (distintos de MD5) diseñados para realizar un trabajo similar. Uno de los usos principales del hash criptográfico es para verificar el contenido de un mensaje o archivo después de la transferencia..

Si alguna vez ha descargado un archivo particularmente grande (distribuciones de Linux, ese tipo de cosas) probablemente habrá notado el valor de hash que lo acompaña. Una vez que se haya descargado este archivo, puede utilizar el hash para verificar que el archivo que descargó no es de ninguna manera diferente al archivo anunciado..

El mismo método funciona para los mensajes, con el hash que verifica que el mensaje recibido coincide con el mensaje enviado. En un nivel muy básico, si usted y un amigo tienen un archivo grande cada uno y desean verificar que son exactamente iguales sin la transferencia considerable, el código hash lo hará por usted.

Los algoritmos de hash también juegan un papel en la identificación de datos o archivos. Un buen ejemplo de esto es las redes de intercambio de archivos de igual a igual, como eDonkey2000. El sistema utilizó una variante del algoritmo MD4 (abajo) que también combinaba el tamaño del archivo en un hash para apuntar rápidamente a archivos en la red.

Un ejemplo distintivo de esto es la capacidad de encontrar rápidamente datos en tablas hash, un método comúnmente utilizado por los motores de búsqueda.

Otro uso para los hashes es en el almacenamiento de contraseñas. Almacenar las contraseñas como texto claro es una mala idea, por razones obvias, por lo que, en cambio, se convierten en valores hash. Cuando un usuario ingresa una contraseña, se convierte a un valor hash y se compara con el hash almacenado conocido. Como el hash es un proceso de una sola vía, siempre que el algoritmo sea correcto, en teoría hay pocas posibilidades de que la contraseña original se descifre del hash.

El hashing criptográfico también se usa a menudo en la generación de contraseñas y contraseñas derivadas de una sola frase..

Algoritmo del compendio de mensajes 5

La función MD5 proporciona un número hexadecimal de 32 dígitos. Si tuviéramos que convertir "makeuseof.com" en un valor hash MD5, se vería así: 64399513b7d734ca90181b27a62134dc. Fue construido sobre un método llamado el Merkle”“Damgí¥estructura rd (abajo), que se utiliza para construir lo que se conoce como “a prueba de colisiones” funciones hash.

Sin embargo, no hay seguridad a prueba de todo, y en 1996 se encontraron fallas potenciales dentro del algoritmo de hashing MD5. En el momento en que estos no se consideraron fatales, se siguió utilizando MD5. En 2004 se descubrió un problema mucho más grave después de que un grupo de investigadores describiera cómo hacer que dos archivos separados compartan el mismo valor de hash MD5. Esta fue la primera instancia de un ataque de colisión que se utilizó contra el algoritmo de hash MD5. Un ataque de colisión intenta encontrar dos salidas arbitrarias que produzcan el mismo valor hash; por lo tanto, una colisión (dos archivos existentes con el mismo valor).

Durante los siguientes años, se llevaron a cabo intentos para encontrar más problemas de seguridad dentro de MD5, y en 2008 otro grupo de investigación logró utilizar el método de ataque de colisión para falsificar la validez del certificado SSL. Esto podría engañar a los usuarios para que piensen que están navegando de forma segura, cuando no lo están. El Departamento de Seguridad Nacional de los Estados Unidos anunció que: “los usuarios deben evitar el uso del algoritmo MD5 en cualquier capacidad. Como ha demostrado una investigación anterior, debe considerarse criptográficamente fragmentada y no adecuada para su uso posterior“.

A pesar de la advertencia del gobierno, muchos servicios siguen utilizando MD5 y, como tales, están técnicamente en riesgo. Sin embargo, es posible “sal” contraseñas, para evitar que los posibles atacantes utilicen ataques de diccionario (probar palabras conocidas) contra el sistema. Si un pirata informático tiene una lista de contraseñas aleatorias de uso frecuente y la base de datos de su cuenta de usuario, puede verificar los hashes en la base de datos con los de la lista. Salt es una cadena aleatoria, que está vinculada a hashes de contraseña existentes y luego se vuelve a hash. El valor de sal y el hash resultante se almacenan en la base de datos.

Si un pirata informático quisiera averiguar las contraseñas de los usuarios, primero tendría que descifrar los hashes de sal, lo que hace que un ataque de diccionario sea bastante inútil. Salt no afecta la contraseña en sí, por lo que siempre debe elegir una contraseña difícil de adivinar.

Conclusión

MD5 es uno de los muchos métodos diferentes para identificar, asegurar y verificar datos. El hash criptográfico es un capítulo vital en la historia de la seguridad y mantener las cosas ocultas. Al igual que con muchas cosas diseñadas pensando en la seguridad, alguien se ha ido y lo ha roto..

Es probable que no tenga que preocuparse demasiado por el hash y las sumas de comprobación MD5 en sus hábitos diarios de navegación, pero al menos ahora sabe qué hacen y cómo lo hacen..

¿Alguna vez has necesitado hacer algo? ¿Verificas los archivos que descargas? ¿Conoces alguna buena aplicación web MD5? Háganos saber en los comentarios.!

Imagen de introducción: Shutterstock

Explorar más sobre: ​​Cifrado, Privacidad en línea.