Краткият отговор
Използвайте алгоритъма, посочен от издателя на файла, защото за сравнението ви е нужен същият. За нови задачи SHA-256 е най-съвместимият избор, а SHA-512 също е добър вариант. BLAKE3 е най-бързият избор за собствените ви големи обеми данни, ако инструментът е наличен във всички участващи системи. И трите днес се смятат за сигурни и за нито един няма известна практически осъществима атака.
По какво се различават
SHA-256 и SHA-512 принадлежат към семейството SHA-2, стандартизирано от NIST, и често се изискват от правилата за съответствие. BLAKE3 е по-нов и не е стандарт на NIST, затова може да не удовлетворява такива правила. SHA-256 и BLAKE3 с изхода по подразбиране дават 256 бита, което означава около 128 бита устойчивост на колизии. SHA-512 дава 512 бита и около 256 бита устойчивост. На практика и двете нива са далеч отвъд възможностите за атака.
Скоростта зависи от хардуера
BLAKE3 е проектиран да използва няколко ядра на CPU и съвременни векторни инструкции, затова обикновено има ясно предимство при големи файлове. При вариантите на SHA-2 резултатът варира: SHA-512 често е по-бърз на 64-битови CPU без специални инструкции, а CPU с разширения SHA ускоряват SHA-256. Измерете на собствената си машина с голям файл, защото кешът и дискът влияят на резултата. Може да се наложи b3sum да се инсталира отделно.
time sha256sum large.iso
time sha512sum large.iso
time b3sum large.isoКакво доказва контролната сума
Съвпадащата контролна сума показва, че файлът е идентичен с този, от който е изчислена хеш стойността. Тя не показва кой е създал файла. Ако нападател може да промени и изтегляния файл, и контролната сума на същата страница, сравнението ще е успешно. За да проверите произхода, ви трябва хеш стойност от отделен доверен канал или подпис, например GPG.
sha256sum -c SHA256SUMS
gpg --verify SHA256SUMS.asc SHA256SUMSКакво да избягвате
Устойчивостта на колизии на MD5 и SHA-1 е нарушена и те не бива да служат за защита от умишлена подмяна. Все още може да присъстват в стари манифести, където откриват само случайни повреди. Некриптографски функции като CRC-32 и xxHash са създадени за скорост и откриване на случайни грешки, никога за сигурност.
Контролни суми в CH-J Server Manager
Модулът Hash & Checksum включва и трите алгоритъма и обозначава SHA-256, SHA-512 и BLAKE3 като препоръчителни, а MD5 и SHA-1 като компрометирани. Той може да изчислява хеш стойности, да сравнява файлове и да проверява очаквана стойност. Модулът не може да определи дали самата очаквана стойност е надеждна, затова я вземайте от източник, на който се доверявате. Приложението проверява собствените си актуализации чрез SHA-512 и подпис OpenPGP заедно.