PHP密码哈希()

时间:2016-07-10 17:43:22

标签: php

如果我希望用户在存储为哈希后编辑其原始密码,我可以应用哪种方法。

3 个答案:

答案 0 :(得分:3)

向用户显示其密码非常不安全的网站。 始终哈希,从不向用户显示其密码。如果他们忘记了密码,则用户重置密码并重新进行密码并将其替换为数据库。但是从不向用户显示他们的密码和总是哈希。

答案 1 :(得分:2)

请勿在数据库中存储未散列的密码。

请勿以“更改密码形式”

显示密码

请勿在任何地方显示密码哈希值。

为用户提供编辑密码的表单,但不提供前一个密码。只需向用户显示一个空文本框,用于插入新密码,同时还有一个文本框供用户输入当前密码。

您可以使用password_hash()检查使用password_verify()进行哈希密码的任何密码。

如果password_verify()返回true,只需使用UPDATE查询来更改存储的哈希值。

答案 2 :(得分:1)

至于保存它的建议,请不要在数据库中存储未加密的密码:如果访问过您的数据库,它们中的每一个都会被公开。

关于你的问题:加密或散列的单词非常困难(或者显然是不可能的,你进行散列或加密吗?)并且恢复成本很高。我理解可用性问题,但是一旦存储了密码,用户就永远不能查询它(这就是我们的密码恢复措施)...简而言之,你可以让他们创建新的密码,但你不能拥有他们编辑他们所拥有的那个,因为你甚至不知道它。

PS:所有这些都假设密码已经存储。当然......如果我们谈论的是html密码标签,那么问题就不同了。

相关问题