with online detector decrypt cryptography md5 hash sha512

cryptography - online - sha512 decrypt c#



Razones por las que SHA512 es superior a MD5 (7)

Depende de tu caso de uso. No se puede reclamar ampliamente "superioridad". (Es decir, sí puede, en algunos casos, pero para ser estricto al respecto, no se puede).

Pero hay áreas donde MD5 se ha roto:

  1. Para empezar: MD5 es viejo y común. Hay toneladas de tablas arcoiris contra ella, y son fáciles de encontrar. Por lo tanto, si usa contraseñas hash (¡sin vergüenza!) - usando md5 - es mejor que no las utilice, son muy fáciles de encontrar. Incluso si estás mezclando con sales simples realmente.
  2. En segundo lugar, MD5 ya no es seguro como una función hash criptográfica (de hecho, ni siquiera se considera una función hash criptográfica como señala el Forked One). Puede generar diferentes mensajes con hash al mismo valor. Entonces, si tiene un Certificado SSL con un hash MD5, puedo generar un Certificado duplicado que diga lo que quiero, que produzca el mismo hash . Esto es generalmente lo que las personas quieren decir cuando dicen que MD5 está ''roto'' - cosas como esta.
  3. En tercer lugar, de forma similar a los mensajes, también puede generar diferentes archivos que tengan el mismo valor, por lo que usar MD5 como suma de comprobación de archivo está ''roto''.

Ahora, SHA-512 es un algoritmo hash de la familia SHA-2 . SHA-1 es considerado como ''eh'' en estos días, lo ignoraré. Sin embargo, SHA-2 tiene relativamente pocos ataques en su contra. La principal de la que habla la wikipedia es un ataque de preimagen de red reducida, lo que significa que si usas SHA-512 de una manera horriblemente incorrecta, puedo romperla. Es obvio que no es probable que lo estés usando de esa manera, pero los ataques solo mejoran, y es un buen trampolín hacia más investigaciones para romper el SHA-512 de la misma forma en que se rompe el MD5.

Sin embargo, de todas las funciones Hash disponibles, la familia SHA-2 actualmente es la más sólida, y la mejor opción considerando lo común, el análisis y la seguridad. (Pero no necesariamente velocidad. Si está en sistemas integrados, necesita realizar un análisis completo).

Me preguntaba si podría encontrar razones o enlaces a recursos que expliquen por qué SHA512 es un algoritmo hash superior para MD5.


Es simple, MD5 está roto;) (ver Wikipedia )

Bruce Schneier escribió sobre el ataque que "[ya] sabíamos que MD5 es una función hash rota" y que "ya nadie debería usar MD5".


Hay un par de puntos que no se abordan aquí, y creo que es por la falta de comprensión sobre qué es un hash, cómo funciona y cuánto tiempo lleva atacarlos con éxito, utilizando el arcoiris o cualquier otro método actualmente conocido. hombre...

En términos matemáticos, MD5 no está "roto" si saltas los intentos de aceleración y aceleración (incluso por 1 segundo), tu seguridad estaría tan "rota" como lo haría con un atacante que lanzara lentamente en tu pared de acero sólido de 1 pie con un cuchara de madera:

Tomará miles de años, y para entonces todos los involucrados estarán muertos; Hay cosas mas importantes de que preocuparse.

Si bloquea su cuenta antes del 20 intento ... problema resuelto. 20 hits en tu muro = 0.0000000001% de probabilidad de que hayan terminado. Literalmente, hay una mejor probabilidad estadística de que en realidad eres Jesús.

También es importante tener en cuenta que absolutamente cualquier función hash va a ser vulnerable a las colisiones en virtud de lo que es un hash: "una (única) identificación única de otra cosa".

Cuando aumenta el espacio de bits, disminuye las tasas de colisión, pero también aumenta el tamaño del ID y el tiempo que lleva calcularlo.

Hagamos un pequeño experimento mental ...

SHA-2, si existiera, tendría 4 identificaciones únicas posibles para algo más ... 00, 01, 10 y 11. Producirá colisiones, obviamente. ¿Ves el problema aquí? Un hash es solo una identificación generada de lo que intenta identificar.

MD5 es realmente muy bueno al elegir aleatoriamente un número basado en una entrada. SHA en realidad no es mucho mejor en eso; SHA solo tiene un espacio masivo para las identificaciones.

El método utilizado es aproximadamente el 0.1% de la razón por la cual las colisiones son menos probables. La verdadera razón es el espacio de bit más grande.

Esta es, literalmente, la única razón por la que SHA-256 y SHA-512 son menos vulnerables a las colisiones; porque usan un espacio más grande para una identificación única.

Los métodos reales que SHA-256 y SHA-512 usan para generar el hash son de hecho mejores, pero no demasiado; los mismos ataques de arcoiris funcionarían si tuvieran menos bits en sus ID, y los archivos e incluso las contraseñas pueden tener identificaciones idénticas usando SHA-256 y SHA-512, es mucho menos probable porque usa más bits.

El VERDADERO PROBLEMA es cómo implementa su seguridad

Si permite que los ataques automatizados lleguen a su punto final de autenticación 1,000 veces por segundo, se verá involucrado. Si acelera a 1 intento por 3 segundos y bloquea la cuenta durante 24 horas después del décimo intento, no es así.

Si almacena las contraseñas sin sal (una sal es solo un secreto adicional para el generador, dificultando la identificación de contraseñas incorrectas como "31337" o "contraseña") y tiene muchos usuarios, será pirateado. Si los sala, incluso si usa MD5, no lo es.

Teniendo en cuenta que MD5 usa 128 bits (32 bytes en HEX, 16 bytes en binario), y SHA 512 solo tiene 4 veces el espacio, pero prácticamente elimina la proporción de colisiones al proporcionar 2 ^ 384 ID más posibles ... Vaya con SHA-512, cada hora.

Pero si estás preocupado por lo que realmente va a pasar si usas MD5, y no entiendes las diferencias reales y reales, probablemente todavía serás pirateado, ¿tiene sentido?


MD5 ha sido roto criptográficamente desde hace bastante tiempo. Esto básicamente significa que algunas de las propiedades usualmente garantizadas por algoritmos hash ya no se mantienen. Por ejemplo, es posible encontrar colisiones hash en mucho menos tiempo que potencialmente necesario para la longitud de salida.

SHA-512 (una de las funciones de hash de la familia SHA-2) es, por ahora, lo suficientemente seguro pero posiblemente no mucho más en el futuro previsible. Es por eso que el NIST comenzó un concurso para SHA-3.

En general, desea que los algoritmos hash sean funciones unidireccionales . Mapean alguna entrada a alguna salida. Por lo general, la salida es de una longitud fija, lo que proporciona un "resumen" de la entrada original. Las propiedades comunes son, por ejemplo, que pequeños cambios en la entrada producen grandes cambios en la salida (lo que ayuda a detectar alteraciones) y que la función no es fácilmente reversible. Para esta última propiedad, la longitud de la salida ayuda mucho porque proporciona un límite superior teórico para la complejidad de un ataque de colisión. Sin embargo, los defectos en el diseño o la implementación a menudo resultan en una complejidad reducida para los ataques. Una vez que se conocen, es hora de evaluar si todavía está usando una función hash. Si la complejidad del ataque cae lo suficiente, los ataques prácticos se ponen fácilmente en el rango de personas sin equipos informáticos especializados.

Nota: He estado hablando solo de un tipo de ataque aquí. La realidad es mucho más matizada pero también mucho más difícil de entender. Dado que las funciones hash se usan con mucha frecuencia para verificar la integridad del archivo / mensaje, la cuestión de la colisión es probablemente la más fácil de entender y seguir.



Necesita un diccionario mucho más grande para mapear al revés, y tiene menos posibilidades de colisión.