实际加盐密码和稍后比较的过程
The process of practically salting a password and comparing later
以下是我可以在商业产品中使用的腌制和储存盐的可行方法吗?
- 关于用户 creation/register:我生成了一个随机的 Salt 字符串。
- 当执行下面的代码时,我知道他们的纯文本密码和用户名。
- 我将 Salt 存储在数据库中,用户名链接到一个单独的 table
- string hashedPwd = hash(pwd+salt)
- 我将带有用户详细信息的 hashedPwd 存储在正常 [users] table
我好奇的地方:
- 用户尝试登录 - 他们输入了用户名和密码
2。我只使用他们的用户名,然后在 Salt table 中查找它,如果我找到匹配项,我就会得到 Salt。 yes/no ?
- string UserTryingToLoginhashedPwd = hash(pwd+Salt)
- 然后我根据用户名获取正常的 [users] 详细信息,并将 db_pwd 与 UserTryingToLoginhashedPwd
进行比较
- if true正常登录
现在阅读我的问题,这听起来像是最合乎逻辑的行动过程,但可以放心使用。
是的,这通常是存储盐和密码并稍后验证用户的正确流程。
以下是我可以在商业产品中使用的腌制和储存盐的可行方法吗?
- 关于用户 creation/register:我生成了一个随机的 Salt 字符串。
- 当执行下面的代码时,我知道他们的纯文本密码和用户名。
- 我将 Salt 存储在数据库中,用户名链接到一个单独的 table
- string hashedPwd = hash(pwd+salt)
- 我将带有用户详细信息的 hashedPwd 存储在正常 [users] table
我好奇的地方:
- 用户尝试登录 - 他们输入了用户名和密码 2。我只使用他们的用户名,然后在 Salt table 中查找它,如果我找到匹配项,我就会得到 Salt。 yes/no ?
- string UserTryingToLoginhashedPwd = hash(pwd+Salt)
- 然后我根据用户名获取正常的 [users] 详细信息,并将 db_pwd 与 UserTryingToLoginhashedPwd 进行比较
- if true正常登录
现在阅读我的问题,这听起来像是最合乎逻辑的行动过程,但可以放心使用。
是的,这通常是存储盐和密码并稍后验证用户的正确流程。