0

我有一个数据合同,在我的服务中,我正在尝试对密码数据成员进行哈希/加盐:

    public void AddStudent(Student student)
    {
        student.StudentID = (++eCount).ToString();
        byte[] passwordHash = Hash(student.Password, _passwordSalt); //invalid expression? _passwordSalt?
        student.TimeAdded = DateTime.Now;
        students.Add(student);
    }

任何人都可以帮忙吗?

4

1 回答 1

1

尝试用我的一个项目中的_passwordSalt此功能替换GenerateSalt()

protected RNGCryptoServiceProvider random = new RNGCryptoServiceProvider();

public byte[] GenerateSalt() {
    byte[] salt = new byte[10];
    random.GetNonZeroBytes(salt);
    return salt;
}

顺便说一句,你必须保存这个生成的盐。每次检查密码都需要相同的盐。

于 2012-04-21T22:26:16.387 回答