如果 MySql 表如下所示,验证密码的 SQL 语句将是什么:
user_id password salt
------- -------- ----
1 23ed2... m9f3m...
我试过了:
select * from password_table
where user_id = 1
and password = shal(`salt` + 'password')
order by id desc
limit 1
它没有返回任何东西。算法是sha512漩涡。
在 php 中是这样的:
hash('sha512', hash('whirlpool', $password));
它可能无法在 sql 语句中完成。