public async Task CreateAsync(UserDto user) { var hash = new PasswordHash(user.Password); await _usersRepository.CreateAsync(new User() { Email = user.Email, PasswordHash = Convert.ToBase64String(hash.PasswordBytes), SaltHash = Convert.ToBase64String(hash.SaltBytes) }); }
public async Task<bool> CheckCredentials(string username, string password) { var user = await _usersRepository.FindByEmailAsync(username); if (user == null) { return false; } var hash = new PasswordHash(password, Convert.FromBase64String(user.SaltHash)); var isPasswordValid = Convert.FromBase64String(user.PasswordHash).SequenceEqual(hash.PasswordBytes); return isPasswordValid; }