我有一个包含用户的数据库,我想为每个用户保存一个随机盐,该盐保存在盐列中,并在密码字段中使用他们的盐+密码的哈希值。
我可以像这样插入它们:
INSERT INTO users([Username], [Password], [Salt])
VALUES('David', HASHBYTES('SHA1', 'randomgeneratedsalt' + 'theirpw'), 'randomgeneratedsalt')
但是我该如何选择它们呢?
我自己的尝试是:
select *
from users
where Username = 'David'
AND Password = HASHBYTES('SHA1', Salt + 'enteredpw')
当然,我可以为尝试登录的用户选择盐,但我不想这样做。