我几乎找不到为Asp.net Mvc指定的任何好的哈希+盐指南。到目前为止,我设法将我的密码哈希并将其存储在数据库中(在注册时)。对于登录,我哈希用户输入,检查它是否与db中的哈希值相同。
Password = HashPass(input.Password).ToString();
使用以下方法来哈希密码,我稍后将其存储在db中。
public string HashPass(string password) {
byte[] encodedPassword = new UTF8Encoding().GetBytes(password);
byte[] hash = ((HashAlgorithm)CryptoConfig.CreateFromName("MD5")).ComputeHash(encodedPassword);
string encoded = BitConverter.ToString(hash)
.Replace("-", string.Empty)
.ToLower();
return encoded;
}
现在来盐,他们真的是什么?他们是如何工作的?如何将盐与我的解决方案结合起来?
非常感谢任何帮助。