У вас есть основы, да.Обычно к паролю добавляют salt , а затем его хэшируют, используя односторонний алгоритм хеширования, такой как SHA1 () , SHA256 () и т. Д. Затем сохраняют имя пользователя, сольи хешированный пароль + соль в вашей БД.При проверке учетных данных вы получаете соль на основе имени пользователя, затем используете его для хеширования предоставленного пароля, а затем сравните его с тем, который вы сохранили.Неудачный ответ пользователю не должен указывать, был ли пароль или имя пользователя неправильным.Просто что-то было неправильно.
Соль предотвращает атаки по словарю.Односторонний хэш не позволяет никому, включая вас или пользователя, когда-либо восстановить пароль.Вы можете только сбросить его.
Это ни в коем случае не исчерпывающее руководство.Еще несколько предложений, чтобы вы были ближе.