导出到数据库之前的salting和散列密码

时间:2013-10-04 04:05:48

标签: c# database winforms hash

我已经创建了一个登录系统,并且已被告知要哈希并加密我的密码。现在,香港专业教育学院看了谷歌,msdn,SO,并发现了大量的哈希和盐渍的东西,但似乎不明白该怎么做?我想我得到了这个过程:

您获取用户创建的密码并对其进行哈希处理 这是写入数据库,但同时写入 您获取哈希值,并使用security.cryptography中的RGN将其加盐,并将salt添加到数据库中

然后撤消它,只需重复这个过程,对吗?

2 个答案:

答案 0 :(得分:3)

首次存储密码时会出现这样的情况:

  1. 生成盐。
  2. 将其连接到密码的末尾。
  3. 哈希密码+盐。
  4. 为用户存储散列字符串和salt。
  5. 然后当用户尝试登录时:

    1. 获取用户的盐。
    2. 将salt连接到输入密码的末尾。
    3. 哈希密码+盐。
    4. 如果散列字符串与为用户存储的散列字符串匹配,则密码正确。

答案 1 :(得分:1)

我在其他帖子中用示例解释了整个过程:

Salting passwords 101