base logic #5

Merged
mfnefd merged 25 commits from registration into main 2024-06-10 12:27:55 +04:00
Showing only changes of commit c902050055 - Show all commits

View File

@ -0,0 +1,38 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
namespace BusinessLogic.Tools
{
internal class PasswordHasher
{
/// <summary>
/// Хеширует с использование SHA256
/// </summary>
/// <param name="password">Пароль</param>
/// <returns>Хеш пароля</returns>
public static string Hash(string password)
{
using (SHA256 sha256 = SHA256.Create())
{
byte[] bytes = sha256.ComputeHash(Encoding.UTF8.GetBytes(password));
return Convert.ToBase64String(bytes);
}
}
/// <summary>
/// Проверяет на соответствие пароля и его хеша
/// </summary>
/// <param name="password">Пароль</param>
/// <param name="passHash">Хеш пароля</param>
/// <returns></returns>
public static bool Verify(string password, string passHash)
{
var hash = Hash(password);
return hash == passHash;
}
}
}