微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ASP Net Identity v3中的密码哈希处理

如何解决ASP Net Identity v3中的密码哈希处理

我一直在考虑ASP Net Identity中的密码哈希流。我发现version 3使用PBKDF2HMAC-SHA256认使用10k迭代)。并将其输出存储在password hash column数据库中,该数据库显然不仅仅包含密码哈希。以下结构适用于第3版:

  • 第一到第二个字节-> ASP Net Identity版本(在我们的示例中为v3)
  • 第2到第5个字节-> PRF的4个字节(伪随机函数,在我们的情况下为HMACSHA256)
  • 第10至13日-> 4个字节,包含盐大小(始终为16)
  • 14日至29日-> 存储随机盐的16个字节
  • 第30到第61-> 32个字节,其中包含哈希密码

问题是,我们将纯盐和密码哈希存储在同一数据库中。在这种情况下,恶意软件可以使用预定义的巨大词典和常用密码,计算出更新后的哈希值,并一一攻击密码。

我了解每个新的/更新密码都会随机生成盐,并且我们进行了许多迭代,使得PBKDF2相对较慢(每秒70k),但是无论如何,至少仍有机会对小密码进行攻击考虑当今计算能力的密码数量

我肯定在这里错过了一些东西。帮助请找到答案: 为什么在计算密码哈希(假设来自证书)时,在哈希密码或某种私钥的顶部不使用加密,以使我们的密码哈希真正安全呢?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。