SHA-1 (prescurtare pentru Secure Hash Algorithm 1) este una dintre numeroasele funcții hash criptografice.
Este cel mai des folosit pentru a verifica că un fișier a fost nemodificat. Acest lucru se face prin producerea unei sume de control înainte ca fișierul să fie transmis și apoi din nou odată ce ajunge la destinație.
Fișierul transmis poate fi considerat autentic numai dacă ambele sume de control sunt identice.
Istoria și vulnerabilități ale funcției SHA Hash
SHA-1 este doar unul dintre cei patru algoritmi din familia Secure Hash Algorithm (SHA). Cele mai multe au fost dezvoltate de Agenția Națională de Securitate a SUA (NSA) și publicate de Institutul Național de Standarde și Tehnologie (NIST).
SHA-0 are o dimensiune de 160 de biți a mesajului (valoare hash) și a fost prima versiune a acestui algoritm. Valorile lui hash sunt de 40 de cifre. A fost publicat sub numele de „SHA” în 1993, dar nu a fost folosit în multe aplicații, deoarece a fost înlocuit rapid cu SHA-1 în 1995 din cauza unei erori de securitate.
SHA-1 este a doua iterație a acestei funcții hash criptografice. Acesta are, de asemenea, un rezumat de mesaje de 160 de biți și a căutat să crească securitatea prin remedierea unei slăbiciuni găsite în SHA-0. Cu toate acestea, în 2005, SHA-1 s-a dovedit a fi nesigur.
Odată ce slăbiciunile criptografice au fost găsite în SHA-1, NIST a făcut o declarație în 2006 încurajând agențiile federale să adopte utilizarea SHA-2 până în anul 2010. SHA-2 este mai puternic decât SHA-1 și atacurile au fost făcute împotriva SHA-2 este puțin probabil să se întâmple cu puterea de calcul actuală.
Nu numai agențiile federale, ci chiar și companii precum Google, Mozilla și Microsoft, fie au început planurile de a nu mai accepta certificate SHA-1 SSL, fie au blocat deja încărcarea acestor tipuri de pagini.
Google are dovada unei coliziuni SHA-1 care face ca această metodă să nu fie fiabilă pentru generarea de sume de verificare unice, fie că este vorba despre o parolă, fișier sau orice altă parte de date. Puteți descărca două fișiere PDF unice de la SHAttered pentru a vedea cum funcționează. Utilizați un calculator SHA-1 din partea de jos a acestei pagini pentru a genera suma de control pentru ambele și veți descoperi că valoarea este exact aceeași, chiar dacă acestea conțin date diferite.
SHA-2 și SHA-3
SHA-2 a fost publicat în 2001, la câțiva ani după SHA-1. Include șase funcții hash cu dimensiuni diferite de digest: SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224 și SHA-512/256.
Dezvoltat de designeri non-NSA și lansat de NIST în 2015, este un alt membru al familiei Secure Hash Algorithm, numit SHA-3 (fost Keccak).
SHA-3 nu este menit să îl înlocuiască pe SHA-2, așa cum versiunile anterioare au fost menite să le înlocuiască pe cele anterioare. În schimb, a fost dezvoltat ca o altă alternativă la SHA-0, SHA-1 și MD5.
Cum se utilizează SHA-1?
Un exemplu real în care SHA-1 poate fi folosit este atunci când introduceți parola în pagina de conectare a unui site web. Deși se întâmplă în fundal fără știrea dvs., poate fi metoda pe care o folosește un site web pentru a verifica în siguranță dacă parola dvs. este autentică.
În acest exemplu, imaginați-vă că încercați să vă conectați la un site web pe care îl vizitați des. De fiecare dată când solicitați să vă conectați, vi se cere să introduceți numele de utilizator și parola.
Dacă site-ul web folosește funcția de hash criptografic SHA-1, înseamnă că parola dvs. este transformată într-o sumă de control după ce o introduceți. Această sumă de control este apoi comparată cu suma de control care este stocată pe site-ul web care se referă la curentul dvs. parola, indiferent dacă nu v-ați schimbat parola de când v-ați înscris sau dacă tocmai ați schimbat-o cu câteva momente în urmă. Dacă cele două se potrivesc, vi se acordă acces; dacă nu o fac, vi se spune că parola este incorectă.
Un alt exemplu în care această funcție hash poate fi utilizată este pentru verificarea fișierelor. Unele site-uri web vor furniza suma de control SHA-1 a fișierului pe pagina de descărcare, astfel încât, atunci când descărcați fișierul, puteți verifica singur suma de control pentru a vă asigura că fișierul descărcat este același cu cel pe care intenționați să îl descărcați.
S-ar putea să vă întrebați unde este o utilizare reală în acest tip de verificare. Luați în considerare un scenariu în care cunoașteți suma de control SHA-1 a unui fișier de pe site-ul web al dezvoltatorului, dar doriți să descărcați aceeași versiune de pe un alt site web. Apoi puteți genera suma de control SHA-1 pentru descărcare și o puteți compara cu suma de control autentică de pe pagina de descărcare a dezvoltatorului.
Dacă cele două sunt diferite, înseamnă nu numai că conținutul fișierului nu este identic, dar ar putea exista malware ascuns în fișier, datele ar putea fi corupte și ar putea deteriora fișierele computerului, fișierul nu este orice are legătură cu fișierul real etc.
Totuși, ar putea însemna doar că un fișier reprezintă o versiune mai veche a programului decât celăl alt, deoarece chiar și o mică modificare va genera o valoare unică a sumei de control.
De asemenea, poate doriți să verificați dacă cele două fișiere sunt identice dacă instalați un pachet de servicii sau un alt program sau o actualizare, deoarece apar probleme dacă unele dintre fișiere lipsesc în timpul instalării.
SHA-1 Calculatoare de sumă de verificare
Un tip special de calculator poate fi folosit pentru a determina suma de control a unui fișier sau a unui grup de caractere.
De exemplu, SHA1 Online și SHA1 Hash Generator sunt instrumente online gratuite care pot genera suma de control SHA-1 a oricărui grup de text, simboluri și/sau numere.
Aceste site-uri web vor genera, de exemplu, această pereche:
pAssw0rd!
bd17dabf6fdd24dab5ed0e2e6624d312e4ebeaba