Junior — Middle
Обяснете принципа на работа на метода за преобразуване на данни с помощта на хеш функции.
sobes.tech AI
Отговор от AI
Функцията за хеширане е метод за преобразуване на входни данни с произволна дължина в фиксиран размер, обикновено под формата на число или низ с фиксирана дължина (хеш код). Основният принцип е, че за всяък уникален вход се получава уникален или почти уникален хеш.
В C# за изчисляване на хеша често се използват класове от пространството имена System.Security.Cryptography, като SHA256 или MD5 (макар че MD5 вече се счита за небезопасен). Пример за използване на SHA256:
using System.Security.Cryptography;
using System.Text;
string input = "Примерни данни";
using (SHA256 sha256 = SHA256.Create())
{
byte[] bytes = Encoding.UTF8.GetBytes(input);
byte[] hash = sha256.ComputeHash(bytes);
string hashString = BitConverter.ToString(hash).Replace("-", "");
Console.WriteLine(hashString);
}
Функциите за хеширане се използват за проверка на цялостта на данните, бързо търсене, съхранение на пароли (с сол) и други задачи, където е важна уникалната и бърза идентификация на данните.