Hashing de contraseñas

Nunca guardes la contraseña

PawWalk necesita cuentas: un walker se registra con un email y una contraseña, y luego vuelve a iniciar sesión. El error tentador es guardar esa contraseña en la base de datos tal cual. No lo hagas. Si tu base de datos alguna vez se filtra — se pierde un backup, se registra una query, un becario corre el SELECT equivocado — cada contraseña en texto plano queda expuesta, y la gente reutiliza contraseñas en todas partes.

La regla que sigue cualquier backend: nunca guardas la contraseña, guardas un hash de un solo sentido de ella. Un hash es una huella digital — puedes calcularla a partir de la contraseña, pero no puedes correrla al revés para recuperar la contraseña. En el login, hasheas lo que el usuario escribió y comparas huellas.

Incluso tú, la persona que corre el servidor, deberías ser incapaz de recuperar la contraseña de un usuario. Ese es todo el punto.