raatools/

Generator hash

Generați hash-uri criptografice din orice text.

Ce este un hash criptografic?

O funcție hash criptografică primește orice intrare — un singur caracter, un document sau un fișier întreg — și produce un șir de lungime fixă de caractere hexazecimale numit digest. Aceeași intrare produce întotdeauna același hash, dar chiar și o mică modificare a intrării produce o ieșire complet diferită. Această proprietate se numește efectul de avalanșă.

Funcțiile hash sunt unidirecționale: nu puteți recupera intrarea originală din hash. Aceasta le face fundamental diferite de criptare, care este proiectată să fie reversibilă cu cheia corectă. Hashing-ul este folosit pentru verificarea integrității datelor, stocarea parolelor, semnăturile digitale și multe alte aplicații de securitate.

Algoritmi hash acceptați

  • SHA-1: SHA-1 produce un hash de 160 de biți (40 de caractere hex). A fost odată standardul pentru certificatele TLS și commit-urile Git, dar în 2017 au fost descoperite vulnerabilități criptografice. SHA-1 este acum depreciat pentru uz de securitate, dar rămâne comun pentru checksum-uri non-securitate.
  • SHA-256: SHA-256 produce un hash de 256 de biți (64 de caractere hex). Este cel mai utilizat algoritm astăzi, securizând conexiunile TLS, tranzacțiile Bitcoin, certificatele de semnare a codului și verificarea pachetelor software.
  • SHA-384: SHA-384 produce un hash de 384 de biți (96 de caractere hex). Este o versiune trunchiată a SHA-512, folosită frecvent în lanțurile de certificate TLS și construcțiile HMAC unde se dorește o marjă de securitate suplimentară.
  • SHA-512: SHA-512 produce un hash de 512 de biți (128 de caractere hex). Oferă puterea maximă din familia SHA-2 și poate fi mai rapid decât SHA-256 pe procesoarele de 64 de biți deoarece operează nativ pe cuvinte de 64 de biți.

Utilizări frecvente ale hashing-ului

  • Verificarea integrității fișierelor prin compararea checksum-urilor după descărcare.
  • Stocarea securizată a parolelor în baze de date (întotdeauna cu un salt unic per utilizator).
  • Generarea semnăturilor digitale pentru documente și pachete software.
  • Cache-busting în dezvoltarea web prin adăugarea hash-urilor de conținut la numele fișierelor.
  • Crearea de identificatori unici adresați prin conținut în sistemele distribuite.

Hashing vs. criptare

Criptarea este reversibilă — puteți decripta datele cu cheia corectă. Hashing-ul este o funcție unidirecțională — nu puteți recupera textul original dintr-un hash. Aceasta face hashing-ul ideal pentru parole (trebuie doar să verificați, nu să recuperați) și verificări de integritate (trebuie doar să detectați modificările).

Textul meu este securizat?

Tot hashing-ul utilizează API-ul Web Crypto integrat în browser (crypto.subtle). Textul nu este niciodată transmis către niciun server. API-ul Web Crypto este același motor criptografic folosit de HTTPS, asigurând implementări de nivel industrial pentru fiecare algoritm.

Întrebări frecvente

Pot două intrări diferite să producă același hash?

Teoretic da — aceasta se numește coliziune. Totuși, pentru SHA-256, găsirea unei coliziuni necesită aproximativ 2¹²⁸ operații, ceea ce este imposibil de realizat din punct de vedere computațional cu tehnologia actuală sau previzibilă. Coliziunile SHA-1 au fost demonstrate, motiv pentru care a fost depreciat.

Ce algoritm hash ar trebui să folosesc?

Pentru majoritatea scopurilor, SHA-256 este cea mai bună alegere. Oferă securitate puternică, compatibilitate largă și performanță excelentă. Folosiți SHA-512 dacă aveți nevoie de o marjă suplimentară de securitate sau lucrați pe sisteme de 64 de biți unde poate fi mai rapid. Evitați SHA-1 pentru orice aplicație sensibilă la securitate.