我们正在使用存储成员登录信息的ASPNET成员资格提供程序,以及MongoDB来存储第二组信息。
由于MongoDB不提供内置加密,因此我们决定在使用ASPNET成员资格提供程序表中的成员salt将数据插入数据库之前对其进行加密。
我如何公开盐以便可以在代码中访问它?我在默认的提供程序类中找不到任何方法。
要么是否有人建议采用更好的方法?将盐保存在不同地方的好处之一是保护它免受“闯入者”的侵害。
谢谢, 最大
答案 0 :(得分:0)
这是一种方法,你可以使用用户名,电子邮件来盐。
public static string hashCalculator(string username, string password)//Use username as salt.
{
byte[] stringbytes = System.Text.Encoding.Unicode.GetBytes(username.ToLower() + password);
return Convert.ToBase64String(new SHA384Managed().ComputeHash(stringbytes));
}