Aparte de la respuesta de Bill aquí está la toma de mí.
- Siempre recurra al hash de la contraseña sin procesar que utiliza el usuario al registrarse.
- Hash la contraseña con sal. La sal es una cadena aleatoria que se deriva criptográficamente para la unicidad. Tengo muchas opciones en .NET, pero no sé nada sobre otras bibliotecas para otros idiomas.
- Almacene la sal en la tabla de la base de datos en una columna. Necesita esta sal para poder verificar un intento de inicio de sesión. (hash => contraseña + sal de la base de datos en comparación con la contraseña de la base de datos). Si son iguales, tiene la contraseña correcta. Continúe y redirija al usuario a otras páginas.
- Use una sal razonablemente grande para complicar el proceso para un hacker. La longitud depende de la importancia de la información de datos para usted.
- Habilite el registro y las transacciones para que tenga todos los datos en caso de que ocurra algo terriblemente malo.
Ahh y lo olvidé: nunca recurras a algo como lo siguiente, pensando que tienes un mecanismo de contraseña seguro.
SHA (MD5 (bcrypt (hash (contraseña + salt))) Siempre manténgalo simple.
- ¿Cómo pasas tu tiempo en internet?
- ¿Deberían considerarse Facebook, Twitter y Google como activos estadounidenses de poder blando?
- ¿Cuánta electricidad se necesita para mantener en funcionamiento los servidores de Internet y el flujo de bits, y cuánto cuesta esta energía?
- ¿De qué manera el proporcionar internet y llamadas gratuitas ayudan a Jio financieramente?
- ¿Por qué las personas en Internet a veces ponen [palabras] en cuadros cuando escriben, como yo hice allí?
bcrypt (contraseña + sal)