Если моя таблица внутри базы данных выглядит следующим образом:
userid uniqueidentifier
username varchar(20)
password varbinary(max)
Когда пользователь отправляет (для регистрации), я отправляю пользователя/пароль в хранимую процедуру.
Хранимая процедура создает новый GUID (используя NEWID()), то я использую HashBytes (sha1) функции SQL Server для создания пароля на основе пароля GUID +, после чего я вставляю значения в таблицу выше.
Когда пользователь отправляет (для входа в систему), я отправляю пользователя/пароль в хранимую процедуру.
Хранимая процедура ищет имя пользователя и захватывает идентификатор пользователя для сравнения хэш-байта (sha1) пароля guid + с полем пароля.
Вы видите недостаток внутри этой логики?