加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – Asp.net Identity使用什么算法来加密密码?

发布时间:2020-12-15 23:06:50 所属栏目:asp.Net 来源:网络整理
导读:Asp.Net Identity框架使用什么样的算法来加密密码?我有一个 Android,iPhone,Web和桌面使用相同数据库的场景. 此密码应加密,因此在ASP.NET MVC中我使用了Identity框架来加密密码.现在我需要算法适用于所有平台. 任何帮助将不胜感激. 提前致谢. 解决方法 ASP.
Asp.Net Identity框架使用什么样的算法来加密密码?我有一个 Android,iPhone,Web和桌面使用相同数据库的场景.
此密码应加密,因此在ASP.NET MVC中我使用了Identity框架来加密密码.现在我需要算法适用于所有平台.

任何帮助将不胜感激.

提前致谢.

解决方法

ASP.NET身份使用 Password-Based Key Derivation Function 2(PBKDF2),由 Rfc2898DeriveBytes实现.它是一种散列算法.

请注意0??7002.

public static string HashPassword(string password)
{
    byte[] salt;
    byte[] bytes;
    if (password == null)
    {
        throw new ArgumentNullException("password");
    }
    using (Rfc2898DeriveBytes rfc2898DeriveByte = new Rfc2898DeriveBytes(password,16,1000))
    {
        salt = rfc2898DeriveByte.Salt;
        bytes = rfc2898DeriveByte.GetBytes(32);
    }
    byte[] numArray = new byte[49];
    Buffer.BlockCopy(salt,numArray,1,16);
    Buffer.BlockCopy(bytes,17,32);
    return Convert.ToBase64String(numArray);
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读