¿Vale la pena implementar SHA2 y SHA3 al mismo tiempo?

1

Estoy creando un sistema de almacenamiento de contraseñas para un servidor web que estoy creando por diversión.

¿Sería más seguro para mí usar SHA2 y SHA3 para el hashing y luego almacenarlos en una base de datos? Si utilizo ambos algos, entonces podré detectar si alguien intentó enviar una colisión SHA2 (por muy improbable que sea), ya que el hash SHA3 sería incorrecto.

¿Pero es SHA2 / SHA3 tan seguro que todo este esfuerzo no tiene ningún sentido?

    
pregunta Michael 22.05.2015 - 23:02
fuente

1 respuesta

3

Lo estás haciendo mal, y lo estás pensando mal. El problema con el hashing de contraseñas no es, y nunca ha sido, sobre colisiones. Los problemas principales con el hash de contraseñas son velocidad (las funciones hash son demasiado rápidas) y paralelismo (una función hash es siempre la misma).

Hay mucha teoría sobre el hashing de contraseñas. A modo de introducción, lea esta respuesta . El resumen simple de una línea es: use bcrypt .

Hacer algo mejor (es decir, más seguro) que bcrypt es difícil (algunas personas están intentarlo y hacerlo de la manera correcta: con una competencia abierta, investigación pública, y años de esfuerzo). Sin embargo, hacer algo que es mucho peor que bcrypt es muy fácil, y muchas personas lo logran aparentemente sin esfuerzo. Por su esquema con una combinación de SHA-2 y SHA-3, estaría en el camino correcto para agregar a una persona más en la larga lista deprimente de personas que sintieron que la creatividad era algo bueno en la criptografía, y pagaron un alto precio por ella. .

(Nada de esto dice nada sobre SHA-2 o SHA-3 como funciones hash genéricas. Pero, a pesar de los nombres, hashing y password hashing son, de hecho, muy actividades distintas, no tienen los mismos requisitos y no deben usar los mismos algoritmos.)

    
respondido por el Tom Leek 22.05.2015 - 23:35
fuente

Lea otras preguntas en las etiquetas