如何使用PHP创建和存储SHA2-512哈希

时间:2017-04-21 12:30:54

标签: php mysql hash

我试图在PHP中寻找SHA2-512哈希函数,但没有看到。对于我目前正在处理的项目,我需要允许用户重置其密码。当他们这样做时,我想在PHP脚本中使用SHA2-512散列密码,然后将其与相关的用户名一起存储在数据库中。我已经从HTML表单中获取了用户名和密码,因此这不是问题。我似乎无法弄清楚如何使用hash()openssl_digest()使用SHA2-512(我使用的是PHP 5)来密码密码。另外,我是否只将{十六进制哈希值存储在我的数据库中作为VARCHAR

1 个答案:

答案 0 :(得分:1)

十六进制标识符使您的表和索引更大,并减慢比较速度。我建议你不要使用它,但如果你必须使用十六进制值作为标识符,你可以使它成为二进制。

你可以这样哈希;

$hashed_password = hash('sha512', $password);