У меня есть приложение в C# и база данных в SQLite. В базе данных у меня есть таблица с несколькими столбцами. В одной из столбцов у меня есть значение, которое зашифровывается с помощью SHA1 из запроса. Но мне нужно, чтобы использовать его в моей C# приложение, как это:C# SQLite encryption hashing SHA1
cmd.CommandText = "Select * from accounts where ([email protected] and password=sha1(@password));";
нужно выбрать строковое значение, для входа в приложение. Я получаю ошибку: no such function sha1
.
Другие сообщения: This one, Я понимаю, что мне нужно создать еще одну функцию для хэширования с помощью sha1? Но я действительно не понимаю, как это сделать ... Может кто-нибудь мне помочь? Извините, если он дубликат, но я не нашел указанного ответа.
Используйте 'Select * из учетных записей, где (имя пользователя = @ имя пользователя и пароль = @ пароль);' и связывают хешированное значение для '@ password' – dvhh
И в большинстве случаев используется хэш-функция, такая как' SHA1', небезопасны для хранения пароля, узнайте о [ключевой функции деривации] (http://en.wikipedia.org/wiki/Key_derivation_function), которые считаются более защищенными для хранения паролей. – dvhh
Вы имеете в виду следующее: 'cmd.Parameters.AddWithValue (« sha1 (@password) », пароль);' или 'cmd.Parameters.AddWithValue (sha1 (« @ password »), пароль);' ?? – dpaul1994