可能的重复:
散列密码和加密它之间的区别
散列与加密密码
我尝试通过将用户名作为其盐值传递,使用 Rfc2898DeriveBytes 在 C# 中对我的密码进行哈希处理。
public string HashPassword(string HashedUsernameSalt, string Password)
{
Rfc2898DeriveBytes HashedPass = new Rfc2898DeriveBytes(Password,
System.Text.Encoding.Default.GetBytes(HashedUsernameSalt), 10000);
return Convert.ToBase64String(Hasher.GetBytes(25));
}
上面的方法给了我一些哈希值。我的问题是
如果他忘记了,是否可以取回我的密码以显示用户?或者我是否需要在这里实现一些其他概念,比如加密和解密?但我听说散列比加密更好。
谢谢!