Junior — Middle
Kas saaksite nimetada hash-algoritmid, mida kasutatakse autentimismärkide loomisel?
sobes.tech AI
Vastus AI-lt
Autentimismärgiste loomiseks kasutatakse sageli järgmisi hash-algoritme:
-
HMAC (Hash-based Message Authentication Code):
- Salajase võtme ja hash-funktsiooni kombinatsioon.
- Sageli kasutatakse SHA-256 või SHA-1-ga.
- Näide: HMAC-SHA256.
-
SHA-256:
- Krüptograafiline hash-funktsioon, mida laialdaselt kasutatakse tokenite genereerimisel.
-
SHA-1:
- Vanem hash-funktsioon, mida praegu vähem soovitatakse turvalisuse nõrkuste tõttu.
-
MD5:
- Vana algoritm, mida ei soovitata turvalisuse eesmärgil.
C#-s kasutatakse tavaliselt HMAC-i koos SHA-256-ga, näiteks JWT (JSON Web Tokens) jaoks.
HMAC-SHA256 näide:
using System.Security.Cryptography;
using System.Text;
string võti = "salajane_võti";
string sõnum = "andmed_tokenile";
using (var hmac = new HMACSHA256(Encoding.UTF8.GetBytes(võti)))
{
byte[] hash = hmac.ComputeHash(Encoding.UTF8.GetBytes(sõnum));
string token = Convert.ToBase64String(hash);
Console.WriteLine(token);
}
Seetõttu on soovitatav kasutada turvaliste tokenite jaoks HMAC-i koos kaasaegsete hash-funktsioonidega, nagu SHA-256.