Как проверять контрольные суммы файлов в Windows через командную строку

Контрольная сумма (хеш-сумма) — это строка символов, полученная из содержимого файла с помощью математического алгоритма. Любое изменение в файле, даже добавление одного бита, полностью изменит хеш. Проверяя контрольную сумму, можно убедиться, что файл не поврежден при передаче и не был изменен неавторизованно.

В операционной системе Windows нет встроенной консольной утилиты, работающей точно так же, как md5sum или sha1sum в Linux, но есть два проверенных способа: через классическую утилиту certutil и через современный командлет PowerShell Get-FileHash. Выбор зависит от используемой версии Windows и предпочтений в формате вывода.

Проверка контрольной суммы через certutil в командной строке

Утилита certutil входит в состав Windows и умеет вычислять хеши с помощью алгоритмов MD5, SHA1 и SHA256. Для вычисления хеша используйте команду certutil -hashfile «Путь\к\файлу» SHA256. Вывод включает префикс «Hash of file: …», после которого следует сама строка хеша. Обязательно заключайте путь к файлу в кавычки, если в нем есть пробелы.

Проверка контрольной суммы через PowerShell

Если используемая версия Windows поддерживает PowerShell (начиная с Windows 10 и Windows Server 2016), удобнее использовать командлет Get-FileHash. Он поддерживает те же алгоритмы, что и certutil, а также дополнительные. Пример команды: Get-FileHash -Path «Путь\к\файлу» -Algorithm SHA256. Командлет возвращает объект с полями Path и Hash, что упрощает последующую обработку в скриптах.

Инструмент Доступность Команда Примечания
certutil Встроена в все поддерживаемые версии Windows certutil -hashfile «Путь\к\файлу» SHA256 Вывод включает префикс «Hash of file: …»
PowerShell Windows 10/11, Windows Server 2016+ Get-FileHash -Path «Путь\к\файлу» -Algorithm SHA256 Выводит объект с путем и хешем
  • Сравните полученный хеш с официальным значением, указанным производителем или источником загрузки.
  • Убедитесь, что выбранный алгоритм (MD5, SHA1, SHA256) соответствует требуемому уровню защиты.
  • При несовпадении хешей проверьте целостность файла- источника и повторно скачайте при необходимости.

Если вы проверяете целостность файлов регулярно, создайте простой батник или скрипт PowerShell, который будет хранить ожидаемые хеши и сообщать о mismatch. Всегда получайте хеши из официальных источников и используйте алгоритмы SHA256 или выше для критических файлов. При обнаружении mismatch прекратите использование файла и проверьте его источник.

PEFile.ru