lunes, 10 de abril de 2017

Hashea como puedas pero hazlo bien.

Yo no se casi nada sobre funciones de hash, de como se han de programar o de por qué no debemos crear nuestro propio sistema de cifrado. Pero últimamente, con el tema de las colisiones en SHA1, estoy bastante interesado así que, me he buscado un poco la vida, y he ido a parar con la siguiente guía que nos responde a muchas dudas. Sobre todo a mi que soy un novato en esto.


En serio, es buena y empieza desde cero, casi mostrándonos el workflow que hará un usuario al conectarse y los pasos que hará el hash:
  1. El usuario crea una cuenta.
  2. Su contraseña es hasheada y se almacena en la base de datos. En ningún momento la contraseña estará en texto plano (sin cifrar).
  3. Cuando el usuario intenta iniciar sesión, se genera un hash para la contraseña cuando que se indico en el login y se compara con el hash de la contraseña real (recuperado de la base de datos).
  4. Si los hashes coinciden, se le concede acceso al usuario. Si no es así, se le dice al usuario que las credenciales de inicio de sesión no válidas.
  5. Los pasos 3 y 4 se repiten cada vez que alguien intenta acceder a su cuenta.
Después ya entra en buenas practicas y en como se deben solventar ciertos ataques a un nivel mucho mas técnico. Esta guía merece toda mi atención:

No hay comentarios:

Publicar un comentario