Контрольная сумма SHA-256
Контрольная сумма — единственная проверка, которая отвечает однозначно. Это отпечаток содержимого: изменился один байт — изменилась вся строка. Подделать её нельзя; можно только подсунуть свой эталон, поэтому эталон берут у проекта, а не рядом с файлом.
Где взять эталонную сумму
В том же выпуске, откуда файл. Варианты, в порядке частоты:
- Файл
checksums.txtилиSHA256SUMSв разделе Assets релиза на GitHub. - Строки прямо в описании выпуска — часто оформлены таблицей «файл → сумма».
- Страница загрузки на сайте проекта, рядом с кнопкой.
Как посчитать без браузера
Windows
certutil -hashfile "C:\Users\Вы\Downloads\happ-setup.exe" SHA256
Работает в обычной командной строке, права администратора не нужны. Есть и вариант для PowerShell — он печатает результат аккуратнее:
Get-FileHash .\happ-setup.exe -Algorithm SHA256
macOS
shasum -a 256 ~/Downloads/happ-3.26.dmg
Linux
sha256sum happ-3.26-x86_64.AppImage
Если рядом лежит файл с суммами, можно проверить всё сразу одной командой — она сама сопоставит строки:
sha256sum -c SHA256SUMS
Android
Штатной команды нет. Проще всего открыть инструмент в начале этой страницы прямо в браузере телефона и выбрать скачанный APK — сумма посчитается локально. Второй вариант — перенести файл на компьютер и посчитать там.
Проверьте, в приложении дело или в доступе
Установка прошла, а серверов нет? Вставьте в приложение заведомо рабочую ссылку. Список серверов появился — файл и установка в порядке, дело в доступе. Демо ТОК VPN на 3 дня выдаётся без карты.
Как сравнивать строки
Сумма — 64 символа. Сравнивать её глазами целиком не нужно и вредно: легко «увидеть» совпадение там, где его нет. Практика такая:
- Сравнить первые шесть и последние шесть символов — этого достаточно, чтобы отличить разные файлы.
- Если оба конца совпали, а сомнения остались — вставить эталон в поле инструмента выше и дать сравнить машине.
- Регистр букв значения не имеет:
9F3Aи9f3a— одно и то же. - Пробелы и переносы строк, попавшие при копировании, тоже не важны — инструмент их отбрасывает.
Что делать, если суммы не совпали
-
Убедиться, что сравниваете тот же файл
Самая частая причина расхождения — не подделка, а разные сборки:
x64противx86, portable против установщика, версия 3.26.1 против 3.26.0. Сверьте имя файла посимвольно. -
Проверить, что загрузка была полной
Оборвавшийся файл даёт другую сумму. Сравните размер с нормой — если он меньше, дело в загрузке. Признаки и решение: файл скачался битым.
-
Скачать заново из официального источника
Если размер в норме, а сумма другая — файл не тот. Не устанавливайте его. Возьмите заново с сайта проекта или GitHub.
-
Если и после этого не совпадает
Проверьте, не взят ли эталон из другого выпуска. Суммы уникальны для каждой версии: сумма от 3.25 никогда не совпадёт с файлом 3.26.
Обязательно ли это делать?
Для файлов из магазинов приложений — нет, там подпись проверяет площадка. Для всего, что скачано файлом с сайта, GitHub или, тем более, со стороннего ресурса — да, это единственная настоящая проверка.
Чем SHA-256 отличается от MD5?
MD5 — старый алгоритм, для которого научились подбирать разные файлы с одинаковой суммой. Для проверки подлинности он больше не годится. Если в релизе есть только MD5, ориентируйтесь заодно на размер и подпись издателя.
Инструмент считает долго. Это нормально?
Для файла в 80 МБ — секунда-две. Дольше бывает на слабых телефонах. Если браузер завис, посчитайте командой в терминале.
Файл ушёл на сервер, когда я его выбрал?
Нет. Браузер читает файл локально и считает сумму средствами самого браузера. Сетевых запросов при этом не происходит — это можно проверить в панели разработчика.
Приложение установлено. Осталось то, что даёт ему серверы
Одна ссылка на все устройства, серверы в нескольких странах, автообновление списка и поддержка в Telegram — ответ ~10 минут.