Asp.net标识散列是否受保护

本文关键字:是否 受保护 net 标识 Asp | 更新日期: 2023-09-27 18:13:01

我在以下url中引用了以下站点的Rijndael和Asp.net哈希实现。

  1. Rijndael -如何使用密码短语生成Rijndael密钥和IV ?
  2. Asp.net哈希. NET身份默认密码哈希器,它是如何工作的,是安全的吗?

在这两个实现中,下面的命令用于获取密码的随机字节。 RijnDael

Rfc2898DeriveBytes pdb = new Rfc2898DeriveBytes(password, SALT);

Asp.net标识散列

Rfc2898DeriveBytes bytes = new Rfc2898DeriveBytes(providedPassword, salt, HasingIterationsCount)

在上述代码之后,RijnDael对返回的字节应用加密。但asp.net identity复制结果,因为它是盐字节数组,并返回哈希键。

这里我有一个困惑。RijnDael和Asp.net的身份散列使用相同的Rfc2898DeriveBytes

当RijnDael可以解密加密密钥(这是在Rfc2898DeriveBytes的帮助下完成的),为什么我们可以解密Asp.net Identity哈希密钥?

那有可能吗?Asp.net身份安全吗?

Asp.net标识散列是否受保护

是的,ASP。. NET的密码哈希方法是安全的

在您提供的示例中,用户正在使用名为高级加密标准 (AES,也称为Rijndael)的加密技术。这就是为什么这个秘密可以被解密。

用户仅使用Rfc2898DeriveBytes类来获取密钥和初始化向量。

类不用于对秘密消息进行散列。加密是隐藏消息的。

ASP。NET使用Rfc2898DeriveBytes类来散列密码。