public static void GenerateKey(string password, User user) { using (var derivedBytes = new Rfc2898DeriveBytes(password, SaltSize)) { user.Salt = derivedBytes.Salt; user.Key = derivedBytes.GetBytes(KeySize); } }
public static bool CheckPassword(string password, User user) { using (var derivedBytes = new Rfc2898DeriveBytes(password, user.Salt)) { byte[] newKey = derivedBytes.GetBytes(KeySize); return newKey.SequenceEqual(user.Key); } }