Domača » kako » Kaj so hrošči MD5, SHA-1 in SHA-256 in kako jih lahko preverim?

    Kaj so hrošči MD5, SHA-1 in SHA-256 in kako jih lahko preverim?

    Včasih boste med brskanjem po internetu prikazali brskalnike MD5, SHA-1 ali SHA-256, vendar ne veste, kaj so. Te na videz naključne vrstice besedila omogočajo, da preverite, ali datoteke, ki jih prenesete, niso poškodovane ali spremenjene. To lahko storite z ukazi, vgrajenimi v Windows, MacOS in Linux.

    Kako deluje haše in kako se uporabljajo za preverjanje podatkov

    Hashe so produkti kriptografskih algoritmov, zasnovanih za izdelavo niza znakov. Pogosto imajo ti nizi določeno dolžino, ne glede na velikost vhodnih podatkov. Oglejte si zgornji grafikon in videli boste, da oba »Fox« in »rdeča lisica preskočita modrega psa« dobita enako dolžino.

    Zdaj primerjaj drugi primer v tabeli s tretjim, četrtim in petim. Videli boste, da so kljub zelo majhni spremembi vhodnih podatkov nastale hasheve zelo različne. Tudi če nekdo spremeni zelo majhen del vhodnih podatkov, se bo hash bistveno spremenil.

    MD5, SHA-1 in SHA-256 so vse različne funkcije razpršitve. Ustvarjalci programske opreme pogosto vzamejo datoteko za nalaganje datotek, kot je datoteka Linux .iso, ali celo datoteko z datoteko Windows .exe in jo zaženejo prek razpršene funkcije. Nato na svojih spletnih straneh ponujajo uradni seznam hashov.

    Tako lahko prenesete datoteko in nato zaženete razpršeno funkcijo, da potrdite, da imate pravo, izvirno datoteko in da med procesom prenosa ni bila poškodovana. Kot smo videli zgoraj, bo tudi majhna sprememba v datoteki drastično spremenila hash.

    To je lahko koristno tudi, če imate datoteko, ki ste jo dobili iz neuradnega vira in želite potrditi, da je to zakonito. Recimo, da imate Linux .ISO datoteko, ki ste jo dobili od nekje in želite potrditi, da ni bila spremenjena. Haše določene datoteke ISO lahko poiščete na spletu na spletni strani distribucije Linuxa. Nato ga lahko zaženete prek funkcije razpršitve na vašem računalniku in potrdite, da se ujema z vrednostjo razpršitve, ki jo pričakujete. To potrjuje, da je datoteka, ki jo imate, ista datoteka, ki je na voljo za prenos na spletni strani distribucije Linuxa, brez kakršnih koli sprememb.

    Upoštevajte, da so »trki« našli pri funkcijah MD5 in SHA-1. To so več različnih datotek - na primer, varna datoteka in zlonamerna datoteka - ki povzročijo isto razpršitev MD5 ali SHA-1. Zato je bolje, če želite SHA-256.

    Kako primerjati Hash funkcije na katerem koli operacijskem sistemu

    S tem v mislih si poglejmo, kako preveriti hash datoteke, ki ste jo prenesli, in jo primerjati s tistim, ki ste ga prejeli. Tu so metode za Windows, MacOS in Linux. Heshe bodo vedno enake, če uporabljate isto funkcijo razprševanja v isti datoteki. Ni pomembno, kateri operacijski sistem uporabljate.

    Windows

    Ta proces je mogoč brez programske opreme drugih proizvajalcev v sistemu Windows, zahvaljujoč programu PowerShell.

    Če želite začeti, odprite okno PowerShell, tako da v meniju Start zaženete bližnjico »Windows PowerShell«.

    Zaženite naslednji ukaz in zamenjajte »C: path.iso« s potjo do katere koli datoteke, ki jo želite pregledati:

    Get-FileHash C: stran.iso

    Za ustvarjanje razpršitve datoteke bo trajalo nekaj časa, odvisno od velikosti datoteke, algoritma, ki ga uporabljate, in hitrosti pogona, v katerem je datoteka.

    Privzeto bo ukaz prikazal razpršitev SHA-256 za datoteko. Vendar pa lahko podate algoritem razprševanja, ki ga želite uporabiti, če potrebujete MD5, SHA-1 ali drugo vrsto razpršitve.

    Izvedite enega od naslednjih ukazov, da podate drug algoritem razprševanja:

    Get-FileHash C: file.iso -Algorithm MD5
    Get-FileHash C: file.iso -Algorithm SHA1
    Get-FileHash C: file.iso -Algorithm SHA256
    Get-FileHash C: stran.iso -Algorithm SHA384
    Get-FileHash C: stran.iso -Algorithm SHA512
    Get-FileHash C: stran.iso -Algorithm MACTripleDES
    Get-FileHash C: o.iso -Algorithm RIPEMD160

    Primerjaj rezultat razpršitvene funkcije z rezultatom, ki ga pričakujete. Če je enaka vrednost, datoteka ni bila pokvarjena, spremenjena ali drugače spremenjena od originala.

    macOS

    macOS vsebuje ukaze za pregledovanje različnih vrst hashov. Za dostop do njih zaženite okno Terminal. Najdete ga v možnosti Finder> Applications> Utilities> Terminal.

    The md5 ukaz prikaže hash MD5 datoteke:

    md5 / pot / do / datoteka

    The shasum ukaz privzeto prikaže razpršitev SHA-1 datoteke. To pomeni, da so naslednji ukazi enaki:

    shasum / pot / do / datoteka
    shasum -a 1 / pot / do / datoteka

    Če želite prikazati razpršitev datoteke SHA-256, zaženite ta ukaz:

    shasum -a 256 / pot / do / datoteka

    Linux

    V Linuxu dostopite do terminala in zaženite eno od naslednjih ukazov, da si ogledate razpršitev datoteke, odvisno od vrste razpršitve, ki jo želite prikazati:

    md5sum / pot / do / datoteka
    sha1sum / pot / do / datoteka
    sha256sum / pot / do / datoteka

    Nekateri hashes so kriptografsko podpisani za še večjo varnost

    Medtem ko vam heš lahko pomaga potrditi, da datoteka ni bila spremenjena, tukaj je še vedno ena možnost napada. Napadalec lahko pridobi nadzor nad spletno stranjo distribucije Linuxa in spremeni hashe, ki se pojavijo na njem, ali pa lahko napadalec izvede napad človeka v sredini in spremeni spletno stran v tranzitu, če ste namesto HTTP dostopali do spletnega mesta. šifrirani HTTPS.

    Zato moderne distribucije Linuxa pogosto ponujajo več kot zgoščene na spletnih straneh. Kriptografsko podpišejo te hasheve in tako ščitijo pred napadalci, ki bi lahko poskušali spremeniti hasheve. Preveriti boste morali kriptografski podpis, da bi zagotovili, da je razpršeno datoteko dejansko podpisala distribucija Linuxa, če želite biti popolnoma prepričani, da haše in datoteke niso bile spremenjene..

    Preverjanje kriptografskega podpisa je bolj vključen proces. Preberite naš vodnik za preverjanje Linux ISO-jev, ki niso bili spremenjeni za popolna navodila.

    Zasluge za sliko: Jorge Stolfi / Wikimedia