Sobes.tech
Junior — Middle

Selgitage andmete teisendamise meetodi tööpõhimõtet hash-funktsioonide abil.

sobes.tech AI

Vastus AI-lt

Hash funktsioon on meetod, mis teisendab sisendandmed mis tahes pikkusega fikseeritud suurusesse, tavaliselt arvuna või fikseeritud pikkusega stringina (hash-kood). Põhiprintsiip on see, et iga unikaalne sisend annab unikaalse või peaaegu unikaalse hash-koodi.

C#-s kasutatakse hash-i arvutamiseks sageli klasse System.Security.Cryptography nimeruumi alt, näiteks SHA256 või MD5 (kuigi MD5 peetakse juba ebaturvaliseks). Näide SHA256 kasutamisest:

using System.Security.Cryptography;
using System.Text;

string input = "Näide andmetest";
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);
}

Hash-funktsioone kasutatakse andmete terviklikkuse kontrollimiseks, kiireks otsinguks, paroolide (soolaga) salvestamiseks ja muude ülesannete täitmiseks, kus oluline on andmete unikaalne ja kiire identifitseerimine.