Implement Password Authentication. Passwords are hashed with salts using bcrypt