Device_id was retrieved from the auth data instead of login's body and
this was causing that a new device was created on every login.
This is (I guess) provoking that some sytests are failing (for example,
"POST /login returns the same device_id as that in the request").
Use if let instead of unwrap
Default to invalid password if could not calculate
Move hash password methdo and return Result
Rename get_password method
Default to empty password when no pwd is received
Store hashed passwords
Store passwords hashed with Argon2 and verify password with that stored
hash.
Co-authored-by: Guillem Nieto <gnieto.talo@gmail.com>