Un algoritm de hashing securizat, adesea cunoscut pur și simplu ca „SHA”, este un algoritm de hash care este considerat sigur din punct de vedere criptografic. În general, funcțiile hashing sunt folosite pentru a sorta și organiza datele digitale în pachete mai mici, mai clasificate. Algoritmii sunt programele care conduc funcțiile, iar securitatea acestor algoritmi contează în măsura în care controlează cât de ușor pot fi deblocate și rearanjate datele. Cât de sigure trebuie să fie lucrurile depinde de obicei de circumstanțe. Mulți dezvoltatori de software și cod își doresc algoritmi de nepătruns, deoarece metodele lor de sortare a subiectelor și de desenare a conexiunilor sunt proprietare și îi folosesc pentru a câștiga bani. În alte cazuri, datele în sine sunt extrem de sensibile, așa cum se întâmplă adesea cu lucruri precum dosarele medicale sau anumite documente guvernamentale. Mecanica reală a SHA-urilor tinde să fie foarte complicată și, de obicei, este necesar cel puțin un anumit grad de cunoștințe tehnice pentru a înțelege pe deplin cum funcționează și cum sunt dezvoltate. La fel ca majoritatea lucrurilor tehnologice, a existat și o evoluție ascendentă în dezvoltare; Modelele anterioare au fost în mare parte înlocuite, iar modelele mai noi, mai sigure sunt introduse aproape constant.
Înțelegerea algoritmilor hash în general
Peisajul digital modern conține sute de milioane de puncte de date, toate acestea ocupând o rețea de interconexiune și puncte comune, atât pe site-uri web, cât și în sfera socială atunci când vine vorba de mesaje și postări generate de utilizatori. Hashingul este o modalitate de a amalgama date care sunt similare sau înrudite, astfel încât să formeze un fel de compendiu sau un „web într-un web” mai mic, mai interconectat. Algoritmii de hashing securizați încearcă să facă această organizare într-un mod eficient și sigur.
Datele originale, odată analizate de către un SHA, de obicei nu pot fi reconstruite fără o putere uriașă de calcul. Algoritmii securizați sunt adesea folosiți în combinație cu alți algoritmi pentru a autentifica mesajele, inclusiv semnăturile digitale.
Cum sunt implementate
Unele routere de rețea și firewall-uri implementează SHA-urile direct în hardware-ul lor. Acest lucru permite ca pachetele de date să fie autentificate cu impact limitat asupra debitului. Software-ul special conceput este o altă opțiune, inclusiv multe implementări open source. De exemplu, Institutul Național de Standarde și Tehnologie din SUA (NIST) și Institutul Canadien de Securitate a Comunicațiilor (CSE) derulează împreună Programul de verificare a modulelor criptografice (CMVP). Acest program oficial certifică funcționarea corectă a implementărilor de algoritm securizat pentru aplicațiile sensibile.
Standardizare
Guvernul SUA a standardizat cel puțin șase algoritmi de hash securizați. SHA-0 și SHA-1 au fost cele mai vechi modele dezvoltate în anii 1990. Seria SHA-2 dezvoltată în anii 2000 a inclus SHA-224, -256, -384 și -512. Acestea sunt concepute astfel încât două documente cu conținut diferit să producă în general două seturi unice de valori hash, ceea ce este cu adevărat util în ceea ce privește evitarea coliziunilor hash.
Cele mai vechi iterații
Algoritmul SHA-0, publicat pentru prima dată în 1993 de NIST, a fost întrerupt rapid după ce a fost găsită o slăbiciune semnificativă. A fost înlocuit cu SHA-1 în 1995, care include un pas suplimentar de calcul care abordează problemele nedezvăluite ale SHA-0. Ambii algoritmi trimit un mesaj de până la 264-1 biți într-un „rezumat” de 160 de biți. Ambele utilizează o dimensiune de bloc de 512 de biți și o dimensiune de cuvânt de 32 de biți în funcționarea lor.
SHA-1 este utilizat în unele protocoale de Internet și instrumente de securitate comune. Acestea includ IPsec, PGP, SSL, S/MIME, SSH și TLS. SHA-1 este, de asemenea, utilizat în mod obișnuit ca parte a schemei de protecție pentru documentele guvernamentale neclasificate. Unele părți ale sectorului privat utilizează acest algoritm și pentru anumite informații sensibile. Cu toate acestea, a fost retras oficial din utilizarea guvernamentală generală în 2010.
Evoluție și dezvoltare continuă
SHA-224, -256, -384 și -512 au fost publicate de NIST între 2001 și 2004. Acești patru algoritmi, cunoscuți și ca familia SHA-2, sunt în general mai robusti decât SHA-1. SHA-224 și SHA-256 utilizează aceleași blocuri, cuvinte și dimensiuni maxime ale mesajelor de intrare ca SHA-1. În schimb, SHA-224 produce un rezumat de 224 de biți, în timp ce SHA-256 creează un rezumat de 256 de biți. SHA-384 și SHA-512 măresc dimensiunea blocului la 1024 de biți, dimensiunea cuvântului la 64 de biți și lungimea maximă a mesajului de intrare la 2128-1 biți. Rezumatul produs de SHA-384 are 384 de biți, în timp ce rezumatul SHA-512 conține 512 biți.
La fel ca SHA-0 și SHA-1, familia SHA-2 a fost proiectată de Agenția de Securitate Națională a SUA (NSA). Deși defecte grave nu au fost dezvăluite public în SHA-2, NIST a deschis un concurs pentru a dezvolta următorul algoritm de hash securizat. Acest nou algoritm, care va fi numit SHA-3, este probabil să fie ales dintr-o colecție de intrări publice. Se așteaptă să fie un design nou, care nu se bazează pe algoritmii existenți.