Що таке контрольна сума?
Контрольна сума, або хеш, - це короткий рядок із літер і цифр, який обчислюється з кожного байта файлу. Той самий файл завжди дає ту саму суму, а зміна хоча б одного байта дає зовсім іншу. По суті, це відбиток вмісту файлу.
Розробники публікують контрольні суми поруч із посиланнями на скачування. Якщо сума скачаного файлу збігається з опублікованою, отже, у вас саме той файл, який вони виклали, а не пошкоджена чи підмінена копія.
Навіщо перевіряти скачані файли
- Пошкоджені завантаження. Обрив з'єднання чи несправний диск можуть зіпсувати великий файл без жодного повідомлення про помилку. Битий ISO-образ часто відмовляє посеред встановлення, коли ви вже й не пам'ятаєте, звідки його взяли.
- Підмінені файли. Зламавши дзеркало завантаження, зловмисники можуть підмінити файл на версію зі шкідливим кодом. У 2016 році зламали сайт Linux Mint, і посилання на скачування вело на ISO з бекдором.
- Не той файл. Перевірка суми заразом виявляє плутанину з версіями - наприклад, збірку для ARM замість x64 або старий реліз із кешу.
Як перевірити хеш файлу онлайн
- Перетягніть скачаний файл в інструмент вище або натисніть, щоб його вибрати.
- Скопіюйте контрольну суму зі сторінки завантаження та вставте її в поле очікуваної суми.
- Інструмент покаже, чи вони збігаються. MD5, SHA-1, SHA-256 і SHA-512 визначаються за довжиною суми.
Можна вставити й цілий рядок із файлу контрольних сум, наприклад 9f86d0...0a08 *ubuntu.iso, - суму буде виділено автоматично.
Чому це безпечно для особистих файлів
Більшість онлайн-калькуляторів хешу спершу завантажують файл на свій сервер. Тут файл читається невеликими частинами засобами самого браузера, тож ніщо не залишає ваш пристрій. Чекати на завантаження не треба, і навіть дуже великі файли обробляються без проблем.
Як перевірити хеш MD5 або SHA-256 у Windows
У PowerShell є вбудована команда для обчислення контрольних сум. Відкрийте PowerShell (знайдіть його через меню «Пуск»), перейдіть до папки з файлом і виконайте:
cd $HOME\Downloads
Get-FileHash .\ubuntu.isoЗа замовчуванням виводиться сума SHA-256. Для інших алгоритмів додайте -Algorithm MD5, -Algorithm SHA1 або -Algorithm SHA512. Щоб не звіряти суму вручну символ за символом, виконайте:
(Get-FileHash .\ubuntu.iso).Hash -eq "вставте-сюди-очікувану-суму"PowerShell виведе True, якщо суми збігаються, і False, якщо ні. У старому командному рядку використовуйте certutil -hashfile ubuntu.iso SHA256.
Як перевірити хеш MD5 або SHA-256 на Mac
Відкрийте Термінал (Програми → Утиліти), перейдіть до папки з файлом і виконайте:
cd ~/Downloads
shasum -a 256 app.dmgЗамініть 256 на 1 або 512 для SHA-1 чи SHA-512. Для MD5 виконайте md5 app.dmg. Щоб Термінал сам порівняв суми, виконайте:
echo "вставте-сюди-очікувану-суму app.dmg" | shasum -a 256 -cУ разі збігу виводиться app.dmg: OK. Зверніть увагу: між сумою та назвою файлу два пробіли.
Як перевірити хеш MD5 або SHA-256 у Linux
У всіх популярних дистрибутивах Linux є утиліти для обчислення сум. У терміналі виконайте:
sha256sum ubuntu.isoТак само працюють md5sum, sha1sum і sha512sum. Багато проєктів публікують файл із контрольними сумами всіх завантажень, часто він називається SHA256SUMS. Покладіть його в одну папку з файлом і виконайте:
sha256sum -c SHA256SUMS --ignore-missingДля кожного файлу, що збігся, виводиться ubuntu.iso: OK. Прапорець --ignore-missing пропускає файли зі списку, яких ви не скачували.
MD5, SHA-1, SHA-256 чи SHA-512
Усі чотири алгоритми роблять те саме, але MD5 і SHA-1 більше не захищають від навмисної підробки файлу. Випадкове пошкодження вони досі виявляють, тому їх і вказують на багатьох сторінках завантаження.
| Алгоритм | Довжина | Надійність | Де використовується |
|---|---|---|---|
| MD5 | Довжина32 символи | НадійністьЗламаний. Можна створити два різні файли з однаковою сумою | Де використовуєтьсяПошук пошкоджених або недокачаних файлів |
| SHA-1 | Довжина40 символів | НадійністьЗламаний із 2017 року з тієї ж причини | Де використовуєтьсяСтарі сторінки завантаження та Git |
| SHA-256 | Довжина64 символи | НадійністьНадійний | Де використовуєтьсяСьогодні стандарт для завантаження ПЗ |
| SHA-512 | Довжина128 символів | НадійністьНадійний | Де використовуєтьсяДеякі дистрибутиви Linux та інструменти безпеки |
Якщо на сторінці завантаження вказано кілька сум, використовуйте SHA-256 або SHA-512.
Що робити, якщо контрольна сума не збіглася
Не відкривайте й не встановлюйте файл. Потім перевірте по черзі, починаючи з найімовірнішого:
- Ви порівнюєте суми того самого алгоритму? SHA-256 ніколи не збіжиться з MD5.
- Ви скачали саме ту версію, для якої вказано суму? Звірте номер версії та архітектуру - x64 чи ARM.
- Видаліть файл і скачайте знову, краще з офіційного сайту, а не з дзеркала.
- Якщо й свіжа копія з офіційного сайту не збігається, напишіть розробникові й не користуйтеся файлом.
Чого контрольна сума не скаже
Збіг суми доводить, що ваш файл ідентичний тому, з якого її обчислили. Але не доводить, що цей файл безпечний. Якщо зловмисники контролюють сайт, вони можуть замінити і сам файл, і суму поруч із ним.
Для надійності беріть контрольну суму не там, де файл: наприклад, з офіційного сайту, якщо скачували з дзеркала. Деякі проєкти ще й підписують файли із сумами через GPG - це підтверджує, що суми опублікував сам розробник.
Часті запитання
Надіслати файли конфіденційно
Надсилайте файли за посиланням із наскрізним шифруванням. Безкоштовно, без реєстрації, і ми не бачимо, що ви надсилаєте.
Надіслати файл