Zdieľať

Parole hash: ce sunt, cum funcționează și de ce să le folosim

Zdieľať

Hashing-ul parolelor este o tehnică prin care parola originală este transformată, cu ajutorul unei funcții hash speciale (ireversibile), într-un șir de caractere cu lungime fixă — denumit hash. Dacă un atacator ar obține acces la baza de date cu hash-urile parolelor, nu ar vedea parolele propriu-zise, ci doar amprentele lor digitale. Rezultatul funcției hash este unidirecțional: odată calculat, hash-ul nu poate fi convertit cu ușurință înapoi în parola originală.

De exemplu, parola „exTraTAjneHeslo159”, după aplicarea funcției hash, arată ca un șir lung „alea” de caractere. Nimeni nu poate deduce din el textul original. La autentificare, parola introdusă este din nou supusă funcției hash și comparată cu acest șir stocat. Este similar cu amprenta digitală: din amprentă nu poți afla identitatea unei persoane, dar o poți recunoaște după ea. Hash-ul parolei funcționează la fel: sistemul verifică identitatea parolei, dar nu cunoaște niciodată parola în sine.

 

sursă: genAi

Proprietățile esențiale ale hashing-ului

Unidirecționalitate

Din hash nu se poate obține (cu ușurință) parola originală. Chiar dacă un atacator cunoaște hash-ul complet, fără o explorare exhaustivă a posibilităților este aproape imposibil să ghicească parola.

Lungime fixă a rezultatului

Indiferent de lungimea parolei originale, hash-ul calculat are întotdeauna aceeași lungime (de exemplu, MD5 → 32 de caractere, SHA-256 → 64 de caractere).

Rezultat determinist

Aceeași parolă generează întotdeauna același hash (fără salt adăugat).

Salt criptografic (salt)

La parolă se adaugă un șir aleatoriu denumit salt. Datorită acestui salt criptografic, chiar și două parole identice vor genera, după hashing, hash-uri complet diferite. Astfel, atacatorul nu poate folosi rainbow tables precalculate (tabele cu hash-urile parolelor comune). De exemplu, dacă doi utilizatori au aceeași parolă, adăugarea unor salt-uri diferite (șiruri aleatorii) garantează că hash-urile lor vor fi complet diferite, iar atacatorul nu poate folosi o singură tabelă precalculată sau o singură listă de cuvinte pentru ambele.

Algoritmi

Există mai multe funcții hash. MD5 și SHA-1 au fost cândva standarde, astăzi sunt considerate insuficient de sigure. Soluțiile moderne precum bcrypt sau Argon2 sunt concepute deliberat pentru a fi lente și consumatoare de memorie. Argon2, de exemplu, permite configurarea cantității de memorie utilizate și a numărului de runde de calcul; bcrypt dispune de un cost factor integrat (număr de iterații). În practică, calculul hash-ului unei parole poate necesita multă memorie și calcule repetate, ceea ce încetinește semnificativ un atac, mai ales cu GPU.

Cum funcționează hashing-ul parolelor

La înregistrare sau autentificare, sistemul nu stochează niciodată parola în formă lizibilă. Procesul decurge, de obicei, astfel:

  1. Utilizatorul introduce parola (de exemplu, în formularul de autentificare al unui site sau al panoului de administrare al unei imprimante).
  2. Sistemul aplică parolei un algoritm hash (de exemplu, SHA-256, bcrypt sau Argon2). Rezultatul este un șir cu lungime fixă — hash-ul parolei.
  3. Hash-ul este stocat în baza de date (în Linux, de exemplu, în fișierul /etc/shadow) în locul parolei reale. Sistemul reține doar acest hash, nu parola propriu-zisă.
  4. La următoarea autentificare, parola introdusă este procesată prin același algoritm hash, iar hash-ul rezultat este comparat cu cel stocat. Dacă coincid, accesul este acordat.

Astfel, serverul sau dispozitivul nu vede niciodată parola dvs. „la clar”. La autentificare, prin rețea se transmite doar hash-ul, nu parola în text. Chiar și în cazul unui atac asupra bazei de date, atacatorul obține doar hash-uri, pe care trebuie să le spargă el însuși (de exemplu, prin atac de dicționar sau brute-force). Toate acestea fac hashing-ul extrem de rezistent: chiar și în cazul compromiterii datelor, atacatorul nu poate exploata direct parolele.

Avantajele hashing-ului și comparație cu alte metode

Protecție în cazul scurgerii de date

Dacă hackerii ar accesa baza de date cu hash-uri, ar vedea doar hash-urile. Fără cunoașterea parolelor originale, trebuie să le spargă — proces anevoios care îi întârzie. Dacă parolele ar fi stocate fără hashing, atacatorul ar obține imediat acces la toate conturile.

Spre deosebire de criptare

Criptarea este un proces bidirecțional cu cheie (parola criptată poate fi decriptată). Dacă atacatorul obține cheia de criptare, poate decripta toate parolele stocate. Hashing-ul este unidirecțional, fără cheie — deci nici un atac asupra serverului nu este legat de compromiterea vreunei chei secrete. Atacatorul nu dispune de nicio cheie cu care să „decripteze” parolele și trebuie să testeze individual fiecare variantă posibilă (brute-force sau dicționar). Protecția parolei depinde astfel exclusiv de complexitatea procesului de hashing, nu de securitatea unei chei.

Riscuri de atac

Atacatorii folosesc de obicei atacuri de dicționar (testarea parolelor comune) și rainbow tables (tabele precalculate cu hash-urile parolelor frecvente). Folosirea unui salt unic pentru fiecare cont și a unor algoritmi „lenți” și puternici complică semnificativ aceste atacuri. Astfel, chiar dacă atacatorul obține un hash, nu poate consulta pur și simplu un tabel — trebuie să verifice fiecare hash printr-un calcul costisitor.

Factori complementari

Hashing-ul se combină frecvent cu alte straturi de securitate, precum autentificarea cu doi factori (2FA) sau verificarea biometrică. Acestea impun utilizatorului un pas suplimentar (cod SMS, amprentă digitală etc.), sporind certitudinea identificării. Principiul stocării parolei rămâne însă același — și în cazul 2FA sau biometriei, parola ajunge la server în formă hash-uită. Aceste metode constituie o a doua linie de apărare.

Complexitate computațională

Algoritmii moderni (Argon2, bcrypt) sunt proiectați deliberat pentru a fi mai lenți și mai solicitanți. Generarea hash-urilor lor necesită mai multă memorie și timp. Argon2 permite configurarea memoriei și a numărului de iterații, iar bcrypt dispune de un cost factor propriu, ceea ce îngreunează semnificativ ghicirea parolei. Chiar și cu servere puternice sau cipuri specializate, procesarea a milioane de hash-uri pe secundă este mult mai dificilă decât cu algoritmii vechi. MD5 și SHA-1 sunt considerate astăzi insuficiente.

Exemple de utilizare a parolelor hash

Parolele hash se regăsesc aproape peste tot în sistemele IT care gestionează conturi de utilizatori.

Servicii web

Magazinele online, băncile online, serviciile de e-mail și rețelele sociale stochează parolele utilizatorilor exclusiv sub formă de hash-uri. În practică, după introducerea parolei aceasta este hash-uită, iar în baza de date se stochează doar hash-ul. Serverul nu prelucrează niciodată parola în formă clară, deci nici în cazul unui atac nu poate dezvălui direct parola dvs.

Sisteme de operare

Parolele conturilor din Linux, Windows sau macOS sunt stocate hash-uit. Linux folosește, de exemplu, fișierul /etc/shadow, unde sunt înregistrate hash-urile parolelor tuturor conturilor. La autentificare, sistemul hash-uiește parola introdusă și o compară cu hash-ul stocat. Windows și macOS operează similar cu hash-uri (de exemplu, NT hash în domeniul Active Directory). Datorită acestui mecanism, sistemul de operare nu reține niciodată parola propriu-zisă, ci doar forma ei securizată.

Dispozitive de rețea și periferice

Imprimantele, scanerele sau routerele moderne solicită adesea o parolă de administrator pentru gestionare. De exemplu, un raport de securitate privind o vulnerabilitate a imprimantelor Brother a dezvăluit că parola implicită de administrator era generată prin hashing-ul numărului de serie. Chiar dacă a fost o implementare defectuoasă (atacatorul cunoștea algoritmul de generare), cazul ilustrează că funcțiile hash sunt utilizate și la fabricarea parolelor pentru astfel de dispozitive. Prin urmare, parolele imprimantelor și ale perifericelor trebuie să fie întotdeauna puternice și stocate hash-uit (preferabil cu un salt unic), la fel ca în orice alt sistem IT.

Securitatea la imprimare

Unele imprimante de birou folosesc modul Secure Print, în care utilizatorul protejează lucrarea cu o parolă. Și aceste parole ar trebui să fie procesate prin hashing la stocare — serverul de imprimare reține doar hash-urile și, la verificare, compară hash-ul parolei introduse cu cel stocat. O situație periculoasă ar fi stocarea unei astfel de parole în plaintext; un sistem corect proiectat o va hash-ui în schimb.

Alte aplicații

Multe programe și servicii abordează parolele în același mod. Sistemele de management al conținutului (WordPress, Drupal), sistemele de baze de date sau CRM-urile de companie stochează parolele utilizatorilor hash-uit. Protocoalele de autentificare (cum ar fi SSH sau RADIUS) comunică adesea doar prin hash-uri de parole. Hashing-ul este utilizat și pentru protecția integrității datelor (sume de control, semnături digitale), deși aceasta nu reprezintă stocarea directă a parolelor. În toate cazurile principiul este același: sistemul reține doar hash-uri, nu parola în text clar. Dacă un utilizator uită parola, serviciul nu o poate recupera — poate genera doar una nouă, pentru că parola veche nu a fost niciodată cunoscută.

Concluzie

Hashing-ul parolelor reprezintă piatra de temelie a protecției moderne a accesului. Pentru utilizator, aceasta înseamnă că serverele, site-urile sau dispozitivele cu care interacționați nu stochează niciodată parola dvs. ca text clar — văd doar hash-ul ei. Chiar dacă un atacator ar obține baza de date cu hash-uri, ar dispune doar de acestea, pe care ar trebui să le spargă cu efort considerabil (de exemplu, prin atac de dicționar).

Pentru utilizatorul obișnuit, recomandările sunt: folosiți parole puternice și unice, utilizați un manager de parole pentru gestionarea accesului la diferite servicii și activați autentificarea cu doi factori (2FA) oriunde este posibil. Astfel, chiar și în cazul compromiterii hash-urilor, atacatorul va fi blocat. Nu folosiți niciodată aceeași parolă pe mai multe site-uri — dacă o parolă este scursă dintr-un serviciu, nu va putea fi folosită pentru a accesa altele.

Aveți încredere doar în serviciile care susțin hashing-ul parolelor. Dacă un sistem poate retrimite parola (de exemplu, prin e-mail), înseamnă că o stochează ca text clar — aceasta este o vulnerabilitate gravă de securitate.

La procesarea parolelor, hashing-ul previne dezvăluirea lor directă și asigură o protecție robustă a datelor de acces. De aceea, hashing-ul parolelor este un element-cheie care sporește semnificativ securitatea conturilor noastre, inclusiv în contextul imprimantelor și al altor dispozitive.


Salt-ul criptografic

Salt-ul criptografic este o tehnică de securitate utilizată pentru protejarea parolelor și a altor date sensibile împotriva atacurilor de tip brute-force sau de dicționar. Procesul implică adăugarea unor date aleatorii, cunoscute sub numele de „salt”, la datele originale ale utilizatorului înainte de hashing-ul acestora.

Adăugarea salt-ului înainte de hashing sporește rezistența sistemului față de atacatorii care ar putea avea acces la baza de date cu parolele hash-uite. Salt-ul criptografic este considerat o practică esențială în protejarea datelor sensibile în sistemele moderne de securitate a informației.

Pentru utilizatorul obișnuit, multe dintre termenele legate de securitate sunt necunoscute. Dacă, la crearea unui cont sau la înregistrarea într-un serviciu, vi se oferă un element suplimentar de protecție față de parolă, folosiți această opțiune. Astăzi face deja parte din configurația de securitate a aproape oricărui serviciu sau aplicație.

Blog Ďalšie zaujímavé články
Coș de cumpărături
Coşul de cumpărături nu conţine articole
TonerDepot.ro
Logare
Menu
Setări cookie-uri

Acest site web folosește cookie-uri pentru a îmbunătăți experiența utilizatorului. Prin utilizarea site-ului nostru web, sunteți de acord cu utilizarea tuturor cookie-urilor în conformitate cu politica noastră privind cookie-urile. Citeşte mai mult

Cookie-urile sunt fișiere text mici plasate pe computerul dvs. de site-urile web pe care le vizitați. Site-urile web folosesc cookie-uri pentru a facilita navigarea eficientă și efectuarea anumitor funcții de către utilizatori. Cookie-urile care sunt necesare pentru ca site-ul web să funcționeze corect pot fi setate fără consimțământul dumneavoastră. Toate celelalte cookie-uri trebuie aprobate în browser înainte de a fi setate. Vă puteți modifica oricând consimțământul pentru utilizarea cookie-urilor pe această pagină.