¿Alguna vez una computadora o dispositivo informático ha olvidado una contraseña? ¿Ha sucedido eso alguna vez?

En realidad, esto es lo que quieres que suceda.

Cuando se desarrolla un paquete de software que involucra un sistema de inicio de sesión, el almacenamiento de contraseñas en texto plano es lo peor que puede hacer por motivos de seguridad. En general, almacenar una contraseña implica los siguientes pasos:

  • Recibe la contraseña
  • Realizar operaciones internas en la contraseña
    • Compruebe si la contraseña cumple los requisitos
    • Aplique una sal para reducir el riesgo de agrietamiento (preferiblemente una sal única por usuario)
  • Generar un hash de la contraseña
  • Almacene el hash (y la sal, en caso de una sal única por usuario) en una base de datos

Cuando un usuario intenta iniciar sesión, realice las mismas operaciones en la contraseña y compárelas.

Esta es una vista MUY simplificada para manejar contraseñas, y existen alternativas mejores y más seguras, pero esta es la base sobre la cual se construyen los sistemas más nuevos.

Las computadoras no pueden “olvidar”, no funcionan como cerebros humanos. Las contraseñas almacenadas en las computadoras pueden corromperse. Y sí, ha sucedido muchas veces.