实际上输入密码并稍后进行比较的过程

时间:2016-10-14 09:25:16

标签: login salt

以下是一种可行的盐渍和储存盐的方法,我可以在商业产品中使用吗?

  1. 在用户创建/注册时:我生成一个随机盐字符串。
  2. 执行下面的代码时,我知道他们的纯文本密码和用户名。
  3. 我将Salt存储在数据库中,并将用户名链接到一个单独的表
  4. string hashedPwd = hash(pwd + salt)
  5. 我将hashedPwd存储在普通[users]表
  6. 中的用户详细信息中

    我很好奇:

    1. 用户尝试登录 - 他们输入用户名和密码 的 2。我只使用他们的用户名,并在Salt表中查找,如果我找到匹配,我会得到Salt。是/否?
    2. string UserTryingToLoginhashedPwd = hash(pwd + Salt)
    3. 然后我根据用户名获取正常的[users]详细信息,并将db_pwd与UserTryingToLoginhashedPwd进行比较
    4. 如果是正常登录
    5. 现在阅读我的问题,这听起来像是最合乎逻辑的行动方案,但可以使用一些保证。

1 个答案:

答案 0 :(得分:1)

是的,这通常是存储salt和密码以及稍后对用户进行身份验证的正确流程。