Hash Function

Definiție

Hash Function sau Funcția Hash – este o ecuație matematică sau un algoritm care ia o intrare sub formă de date digitale (poate fi orice, de la o parolă de e-mail, la conținutul unei cărți digitale) și o convertește într-o ieșire criptată care constă într-un șir de litere și numere de lungime fixă.

Chiar dacă ieșirea unui Hash Function poate părea aleatorie, va produce întotdeauna aceeași ieșire pentru o intrare dată.

Dacă intrarea este modificată în vreun fel, valoarea hash a ieșirii va fi complet diferită.

Explicație

De exemplu, rularea textului „abc” prin funcția hash SHA256 (aceasta este funcția hash criptografică utilizată pentru securizarea blockchain-ului Bitcoin) dă următoarea ieșire:

ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad

Dacă șirul de intrare este ușor modificat, și introduceți „abc!” în loc de “abc”, noua ieșire SHA 256 devine:

5ac9481b887da55cdb508bbb7d91e7896c418c1ad3badb6f4f6d2a524f5cdcaf

După cum se vede din exemplul de mai sus, o ușoară modificare a intrării produce o ieșire hash complet nouă. Hash-urile sunt considerate a fi funcții unidirecționale, deoarece nu există nicio modalitate de a obține intrarea originală din hash-ul de ieșire generat.

Funcțiile Hash sunt esențiale și au multe utilizări în tehnologia blockchain și în sistemele descentralizate. În crypto-monede, în special în cele care funcționează cu algoritmul de dovadă a consensului muncii (Proof of Work), minerii rulează următoarele prin funcția hash SHA256:

  1. Date acumulate din block-ul tranzacțiilor semnate recent;
  2. Informații de referință din block-ul anterior din blockchain;
  3. Un număr generat aleatoriu.

Cele trei componente de mai sus sunt reținute până când rezultatul îndeplinește criterii specifice care permit noului block de tranzacții să fie legat matematic de block-ul anterior, adăugând astfel un alt block în blockchain.

abonează-te la newsletter

Articole relevante