Trumpas atsakymas
Naudokite failo leidėjo nurodytą algoritmą, nes palyginimui reikia to paties algoritmo. Naujiems darbams SHA-256 yra plačiausiai suderinamas pasirinkimas, o SHA-512 taip pat tinka. BLAKE3 yra sparčiausias pasirinkimas dideliems nuosaviems duomenų kiekiams, jei įrankis prieinamas visose naudojamose sistemose. Šiandien visi trys laikomi saugiais ir nė vienam nėra žinomos praktiškai įgyvendinamos atakos.
Kuo jie skiriasi
SHA-256 ir SHA-512 priklauso NIST standartizuotai SHA-2 šeimai, o atitikties taisyklės dažnai reikalauja juos naudoti. BLAKE3 yra naujesnis ir nėra NIST standartas, todėl gali neatitikti tokių taisyklių. SHA-256 ir BLAKE3 su numatytąja išvestimi pateikia 256 bitus, o tai reiškia maždaug 128 bitų atsparumą kolizijoms. SHA-512 pateikia 512 bitų ir maždaug 256 bitų atsparumą. Praktikoje abu lygiai gerokai viršija tai, ką įmanoma įveikti atakomis.
Sparta priklauso nuo aparatinės įrangos
BLAKE3 sukurtas naudoti kelis CPU branduolius ir šiuolaikines vektorines instrukcijas, todėl apdorodamas didelius failus paprastai aiškiai pirmauja. SHA-2 variantų rezultatai skiriasi: SHA-512 dažnai spartesnis 64 bitų procesoriuose be specialių instrukcijų, o CPU su SHA plėtiniais spartesnis SHA-256. Matuokite savo kompiuteryje naudodami didelį failą, nes rezultatą veikia podėlis ir diskas. b3sum gali tekti įdiegti atskirai.
time sha256sum large.iso
time sha512sum large.iso
time b3sum large.isoKą įrodo kontrolinė suma
Sutampanti kontrolinė suma rodo, kad failas yra identiškas tam, iš kurio apskaičiuota maišos reikšmė. Ji neparodo, kas sukūrė failą. Jei užpuolikas gali pakeisti ir atsisiunčiamą failą, ir kontrolinę sumą tame pačiame puslapyje, palyginimas bus sėkmingas. Kilmei patikrinti reikia maišos reikšmės iš atskiro patikimo kanalo arba parašo, pavyzdžiui, GPG.
sha256sum -c SHA256SUMS
gpg --verify SHA256SUMS.asc SHA256SUMSKo vengti
MD5 ir SHA-1 atsparumas kolizijoms yra įveiktas, todėl jų nereikėtų naudoti apsaugai nuo tyčinio pakeitimo. Jie dar gali būti pateikiami senuose manifestuose, kur aptinka tik atsitiktinius pažeidimus. Nekriptografinės funkcijos, tokios kaip CRC-32 ir xxHash, sukurtos spartai ir atsitiktinėms klaidoms aptikti, o ne saugumui užtikrinti.
Kontrolinės sumos CH-J Server Manager programoje
Modulis Hash & Checksum apima visus tris algoritmus ir žymi SHA-256, SHA-512 bei BLAKE3 kaip rekomenduojamus, o MD5 ir SHA-1 – kaip įveiktus. Jis gali apskaičiuoti maišos reikšmes, palyginti failus ir patikrinti numatomą reikšmę. Modulis negali nustatyti, ar pati numatoma reikšmė yra patikima, todėl gaukite ją iš šaltinio, kuriuo pasitikite. Programa savo naujinimus tikrina kartu naudodama SHA-512 ir OpenPGP parašą.