PasswordHasher.cs 1015 B

123456789101112131415161718192021222324252627282930313233
  1. using BCrypt.Net;
  2. namespace LibraryManagementSystem.Console.Utils;
  3. /// <summary>
  4. /// Выполняет хэширование паролей.
  5. /// </summary>
  6. public static class PasswordHasher
  7. {
  8. /// <summary>
  9. /// Создает хэш пароля.
  10. /// </summary>
  11. /// <param name="password">Исходный пароль.</param>
  12. /// <returns>Хэшированный пароль.</returns>
  13. public static string HashPassword(string password)
  14. {
  15. return BCrypt.Net.BCrypt.HashPassword(password);
  16. }
  17. /// <summary>
  18. /// Проверяет пароль.
  19. /// </summary>
  20. /// <param name="password">Исходный пароль.</param>
  21. /// <param name="hash">Хэш пароля.</param>
  22. /// <returns>
  23. /// true - пароль корректный.
  24. /// false - пароль неверный.
  25. /// </returns>
  26. public static bool VerifyPassword(string password, string hash)
  27. {
  28. return BCrypt.Net.BCrypt.Verify(password, hash);
  29. }
  30. }