¿Es BCrypt suficiente para guardar una contraseña en una base de datos?

6

Para permitir que los usuarios se conecten a mi sitio web, cifro su contraseña con BCrypt, ya que es uno de los algoritmos más lentos para descifrar (haciendo que una base de datos comprometida sea más larga de descifrar).

Pero me preguntaba si eso era suficiente, o si combinarlo con un algoritmo de hashing como sha256 / 512 fue mejor?

De hecho, eso significaría:

clear password -> sha256 -> bcrypt -> stored in database.

¿Agregar el sha256 realmente aumenta la dificultad para descifrarlos, o es suficiente la lentitud de BCrypt?

    
pregunta Cyril N. 08.05.2012 - 20:30
fuente

1 respuesta

4

La respuesta corta es, usa bcrypt, no SHA256. Bcrypt ya tiene la contraseña, por lo que si está usando bcrypt, no tiene sentido usar ambos bcrypt + SHA256; No será más fuerte. Bcrypt solo es suficiente.

Hay muchos consejos en este sitio sobre este tema. Busque "hashing de contraseñas" y lo encontrará.

Vea, por ejemplo, ¿Cómo hacer hash de forma segura las contraseñas? , ¿Qué método de hash de contraseña debo usar? , ¿La mayoría de los algoritmos (s) hash de contraseña segura? , ¿Los expertos en seguridad recomiendan? bcrypt para el almacenamiento de contraseñas? .

Desea utilizar un algoritmo de hashing de contraseñas tan lento como pueda soportar, para evitar ataques de diccionario sin conexión en las contraseñas de las personas si su base de datos está en peligro.

Por supuesto, eso no es suficiente. Hay una variedad de pasos que debe tomar para hacer que las contraseñas sean lo más seguras posible. Aquí hay algunos:

  • Use SSL / TLS en todo el sitio. Cualquier intento de visitar su sitio a través de HTTP debe redirigirse inmediatamente a HTTPS.

  • Habilite HSTS en tu sitio. Esto le dice a los navegadores que solo se conecten a usted a través de HTTPS. Paypal lo usa. Es compatible con las versiones recientes de Firefox y Chrome.

Busca en el sitio y encontrarás mucho más.

    
respondido por el D.W. 08.05.2012 - 20:43
fuente

Lea otras preguntas en las etiquetas