30Aug

Care sunt razele MD5, SHA-1 și SHA-256 și cum le verific?

Uneori veți vedea șublele MD5, SHA-1 sau SHA-256 afișate alături de descărcări în timpul călătoriilor pe internet, dar nu știți cu adevărat ce sunt. Aceste șiruri de text aparent aleatoare vă permit să verificați dacă fișierele pe care le descărcați nu sunt corupte sau manipulate. Puteți face acest lucru cu comenzile construite în Windows, MacOS și Linux.

Cum funcționează hashes-urile și modul în care sunt utilizate pentru verificarea datelor

Hashes sunt produse ale algoritmilor criptografici proiectați pentru a produce un șir de caractere. Adesea, aceste șiruri au o lungime fixă, indiferent de mărimea datelor de intrare. Aruncați o privire la graficul de mai sus și veți vedea că ambele "Fox" și "Foxul roșu sărit peste câinele albastru" produc aceeași ieșire de lungime.

Comparați acum al doilea exemplu din diagramă cu al treilea, al patrulea și al cincilea. Veți vedea că, în ciuda unei modificări foarte minore a datelor de intrare, hașurile rezultate sunt foarte diferite una de cealaltă.Chiar dacă cineva modifică o mică parte din datele de intrare, hash-ul se va schimba dramatic.

MD5, SHA-1 și SHA-256 sunt diferite funcții hash. Creatorii de software depun adesea un fișier de descărcare - cum ar fi un fișier. iso Linux sau chiar un fișier. exe Windows - și executați-l printr-o funcție hash. Apoi oferă o listă oficială a hashes-urilor pe site-urile lor.

În acest fel, puteți să descărcați fișierul și apoi să executați funcția hash pentru a confirma că aveți fișierul original, original și că acesta nu a fost corupt în timpul procesului de descărcare sau a fost manipulat în mod incorect. După cum am văzut mai sus, chiar și o mică modificare a fișierului va schimba drastic hash-ul.

Acestea pot fi, de asemenea, utile dacă aveți un fișier pe care l-ați primit dintr-o sursă neoficială și doriți să confirmați că este legitimă.Să presupunem că aveți un fișier. ISO de Linux pe care l-ați primit de undeva și doriți să confirmați că nu a fost manipulat. Puteți căuta hash-ul acestui fișier ISO specific on-line pe site-ul distribuției Linux. Puteți rula apoi prin intermediul funcției hash de pe computer și confirmați că aceasta se potrivește cu valoarea hash pe care ați aștepta să o aibă.Acest lucru confirmă faptul că fișierul pe care îl aveți este exact același fișier oferit pentru descărcare pe site-ul distribuției Linux, fără nicio modificare.

Cum de a compara funcțiile Hash pe orice sistem de operare

Având în vedere acest lucru, să ne uităm la cum să verificați hash-ul unui fișier descărcat și să îl comparați cu cel pe care îl oferiți. Iată metodele pentru Windows, MacOS și Linux. Cheile vor fi întotdeauna identice dacă utilizați aceeași funcție de tip hashing în același fișier. Nu contează ce sistem de operare utilizați.

Windows

Acest proces este posibil fără software terță parte pe Windows datorită PowerShell.

Pentru a începe, deschideți o fereastră PowerShell lansând comanda rapidă "Windows PowerShell" din meniul Start.

Rulați următoarea comandă, înlocuind "C: \ path \ to \ file.iso" cu calea spre orice fișier pe care doriți să îl vedeți:

Get-FileHash C: \ path \ to \ file.iso

ia ceva timp pentru a genera hash-ul fișierului, în funcție de mărimea fișierului, de algoritmul pe care îl utilizați și de viteza unității în care este pornit fișierul.

În mod implicit, comanda va afișa hash-ul SHA-256 pentru un fișier. Cu toate acestea, puteți specifica algoritmul de ștergere pe care doriți să îl utilizați dacă aveți nevoie de un tip de hash MD5, SHA-1 sau de alt tip.

Rulați una dintre următoarele comenzi pentru a specifica un algoritm de ștergere diferit:

Get-FileHash C: \ path \ to \ file.iso -Algoritm MD5 Get-FileHash C: \ path \ to \ file.iso -Algoritm SHA1 Get-FileHashC: \ path \ to \ file.iso -Algoritm SHA256 Get-FileHash C: \ cale \ to \ file.iso -Algoritm SHA384 Get-FileHash C: \ path \ to file.iso -Algoritm SHA512 Get-FileHash C:\ path \ to \ file.iso -Algoritmul MACTripleDES Get-FileHash C: \ path \ to \ file.iso -Algoritmul RIPEMD160

Comparați rezultatul funcției hash cu rezultatul pe care ați așteptat să-l vedeți. Dacă este aceeași valoare, fișierul nu a fost corupt, a fost manipulat sau altfel modificat de original.

img_5894fdde80f06

macOS

macOS include comenzi pentru vizualizarea diferitelor tipuri de hashes. Pentru a le accesa, lansați o fereastră Terminal. Veți găsi la Finder & gt;Aplicații & gt;Utilitare & gt;Terminal.

Comanda md5 afișează hash-ul MD5 al unui fișier:

md5 /path/to/ file

Comanda shasum arată SHA-1 hash-ul unui fișier în mod implicit. Aceasta înseamnă că următoarele comenzi sunt identice:

shasum /path/to/ fișier shasum -a 1 /path/to/ fișier

Pentru a arăta SHA-256 hash-ului unui fișier, executați următoarea comandă:

shasum -a 256 /path/to/ fișier

Linux

Pe Linux, Terminal și executați una dintre următoarele comenzi pentru a vizualiza hash-ul unui fișier, în funcție de tipul de hash pe care doriți să îl vizualizați:

md5sum /path/to/ fișier sha1sum /path/to/ fișier sha256sum /path/to/ fișier

Unele Hash sunt semnate în mod criptografic pentru mai multă securitate

În timp ce hashesvă poate ajuta să confirmați că un fișier nu a fost modificat, există încă o cale de atac aici. Un atacator ar putea să obțină controlul asupra unui site web al distribuției Linux și să modifice hash-urile care apar pe el sau un atacator ar putea efectua un atac om-în-mijloc și poate modifica pagina web în tranzit dacă accesați site-ul prin HTTP în loc decriptate HTTPS.

De aceea distribuțiile moderne Linux oferă de multe ori mai mult decât hashes listate pe paginile web. Ei semnează criptografic aceste ștersuri pentru a proteja împotriva atacatorilor care ar putea încerca să modifice hashes-urile. Veți dori să verificați semnătura criptografică pentru a vă asigura că fișierul hash a fost de fapt semnat de distribuția Linux dacă doriți să fiți absolut siguri că hash-ul și fișierul nu au fost manipulate.

Verificarea semnăturii criptografice este un proces mai implicat. Citiți ghidul nostru pentru a verifica dacă ISO-urile Linux nu au fost modificate pentru instrucțiuni complete.

Credit de imagine: Jorge Stolfi / Wikimedia