logo RankiaRomânia

Ce este un hash criptografic? Definiție și caracteristici

Un hash criptografic transformă datele într-o serie fixă de caractere, asigurând securitatea și integritatea informațiilor în blockchain și alte aplicații.
hash criptografic

Un hash criptografic este o funcție criptografică ce constă într-un algoritm matematic care se ocupă de transformarea oricărui bloc arbitrar de date într-o serie nouă cu o lungime fixă de „n” caractere.

Cu alte cuvinte, funcția hash permite ca, indiferent de cantitatea originală de date introduse sau de dimensiunea fișierului implicat, să se obțină întotdeauna un rezultat de aceeași dimensiune. Este utilizată în lumea criptomonedelor.

Principala caracteristică a acestui tip de algoritm este că un hash este capabil să convertească orice intrare într-o ieșire cu aceeași cantitate de cifre, care în orice caz sunt „n” caractere.

Este important de menționat că rezultatul funcției hash nu poate fi descifrat de o terță persoană. Pur și simplu, ar observa un cod ilizibil.

De asemenea, nu se poate realiza inginerie inversă, adică, odată ce se obține rezultatul sau output-ul (numit și valoare hash) nu este posibil să fie transformat înapoi în datele introduse (input). Este ca atunci când macini boabe de cafea și nu le poți transforma înapoi în forma lor originală. Această proprietate este cunoscută sub numele de unidirecționalitate.

Dacă s-ar introduce același input de două ori, s-ar obține același rezultat. Prin urmare, dacă se cunosc datele originale, este posibil să se valideze codul generat de hash.

Caracteristicile funcției hash

Putem evidenția următoarele caracteristici ale funcției hash:

  • Este liberă de coliziuni, adică două input-uri diferite nu vor obține același output.
  • Oferă oportunitatea de a proteja informațiile.
  • Permite detectarea încălcării datelor și verificarea integrității unui fișier descărcat.
  • Știm că întotdeauna se va obține un output de aceeași lungime. Această proprietate este cunoscută sub numele de determinism.
  • Chiar și majusculele schimbă rezultatul output-ului.

Originea termenului de hash criptografic sau hash

Termenul hash a fost utilizat pentru prima dată acum mai bine de 60 de ani. În 1953, un angajat IBM pe nume H. P. Luhn a folosit termenul într-un memorandum datat în ianuarie același an, în care se face o analogie a termenului hash, al cărui sens în engleză este a toca, a amesteca.

Pentru ca termenul să fie folosit pe scară largă, a fost nevoie de aproximativ 10 ani.

La ce se folosește un hash criptografic?

Aceasta este o întrebare recurentă.

În cazul funcției hash, aceasta a fost creată cu intenția de a standardiza un set de date într-un număr definit de caractere, care va fi procesat sau interpretat în funcție de cerințe.

De exemplu, este posibil să se asocieze un set de informații precum nume, telefoane și adrese cu un număr specific de caractere care facilitează procesarea datelor.

În cazul blockchain și al criptomonedelor, hash-ul are o informație importantă, deoarece este responsabil de standardizarea anumitor date într-un număr fix de caractere. Pentru Bitcoin, există un algoritm hash numit SHA-256 sau algoritm de hashing sigur de 256 de biți.

Este de menționat că algoritmul hash este parte a unui mecanism de rezolvare a problemelor matematice complexe numit Proof of Work, care este folosit, de exemplu, de minerii de bitcoin

Algoritmul SHA-256 convertește șiruri de orice lungime într-un șir fix de 64 de caractere.

Implementarea hash-ului ca funcție criptografică are ca scop blocarea acțiunilor precum duplicarea cheltuielilor, ceea ce este clasificat ca o acțiune frauduloasă. În plus, hash-ul protejează stocarea parolelor.

Deoarece este un număr fix care nu poate fi duplicat în cadrul algoritmului, evită fraudele asociate cu duplicatele și contribuie la autentificarea oricărui fișier. Aceasta înseamnă că de fiecare dată când un fișier dintr-un lanț de blocuri se schimbă, și hash-ul său se va schimba automat, fiind același de fiecare dată când există vreo modificare.

Ideea este de a garanta coerența blocurilor care formează blockchain-ul, deoarece hash-ul va menține întotdeauna o legătură cu fișierele anterioare

Alte utilizări ale algoritmului hash

Alte utilizări ale hash-ului, pe lângă importanța sa pentru blockchain pe care am explicat-o, sunt următoarele:

  • Administrarea bazelor de date: Datele pot fi stocate într-un mod mai eficient. Să ținem cont că textele lungi ar putea fi compactate în coduri mai scurte.
  • Legarea la parole: Parolele pot fi legate de o valoare hash la generarea unui nou cont de utilizator. În acest fel, când se dorește conectarea la cont, parola introdusă se transformă în hash și se compară cu valoarea hash stocată. De asemenea, dacă utilizatorul dorește să recupereze parola, se va crea o altă valoare hash pentru noua parolă.
  • Stocarea datelor sensibile: Hash-ul produce un rezultat ilizibil pentru terți, astfel încât în cazul furtului de date acestea nu ar putea fi utilizate.

Care este diferența dintre criptare și hashing?

Criptarea este, de asemenea, un proces prin care un set de date este transformat pentru a fi ilizibil pentru terți.

Diferența dintre criptare și hashing este că prima este bidirecțională, în timp ce a doua este unidirecțională.

Adică, cu criptarea, datele pot fi decriptate și revin la forma lor originală. Cu hashing, acest lucru nu este posibil.

FAQ

Articole conexe