Да, хеширование паролей - лучший вариант.Это действительно не имеет значения (в большинстве случаев), где вы храните пароль, если вы даете пользователю способ его восстановить.Например, при запуске пользователь создает свой журнал, поэтому пароль для введенного пользователя создается / хэшируется.Вам также нужно будет запросить другую информацию, такую как девичья фамилия матери, имя первого питомца и т. Д. (Что-то, что пользователь узнает).
Даже если кто-то удалит хэш, журнал заблокирован, и вам не следует простопопросить пользователя нового.Пользователь не сможет войти, если он не проверит другую информацию.
Вы также можете использовать ключи, которые пользователь может безопасно хранить в другом месте (например, файл на USB-накопителе).Вы даже можете пойти дальше и зашифровать саму базу данных.
Множество способов сделать это, но ни одного полного доказательства.