我正在尝试在 SQL Server 中加密密码,当我使用字符串与使用准备好的语句参数时,我得到了两个不同的结果。
例如:
SELECT
sys.fn_varbintohexstr(HASHBYTES('sha1', ?)),
sys.fn_varbintohexstr(HASHBYTES('sha1', 'password'))
在哪里?由“密码”填充。它给了我
0xe8f97fba9104d1ea50479...
0x5baa61e4c9b93f3f06822...
为什么我得到两个不同的结果应该是同一件事?
此外,这仅在 SQL Server 中发生,如果我在 MySQL 中执行类似的查询,它会为两者返回相同的值。
我知道我应该使用更好的加密,但我现在坚持使用 sha1(无盐)。
谢谢