Перейти к содержимому

Как в zip проверить контрольную сумму

  • автор:

7-Zip плагины\WinCryptHashers

WinCryptHashers – это небольшой плагин для популярного архиватора 7-Zip. Он позволяет отображать в 7-Zip значения дополнительных алгоритмов хеширования, например MD5. Также WinCryptHashers позволяет 7-Zip создавать текстовые файлы с контрольными суммами.

WinCryptHashers

Список дополнительных алгоритмов, которые могут быть отображены в программе 7-Zip:

Важно. Алгоритмы SHA-384 и SHA-512 могут быть недоступны в ОС Windows XP без установленных сервис паков.

После установки крипропровайдера ViPNet CSP также могут быть доступны следующие алгоритмы:

  • GOST R 34.11-94
  • GOST 34.11-2012 256
  • GOST 34.11-2012 512

Крипропровайдер ViPNet CSP может быть скачан с официальной страницы на сайте infotecs.ru.

Установка

Установочный дистрибутив WinCryptHashers представляет собой простой zip архив, в котором находятся 4 файла:

  • WinCryptHashers.64.dll – 64 битная версия плагина
  • WinCryptHashers.32.dll – 32 битная версия плагина
  • WinCryptHashers.ini – файл настроек
  • ReadMe.txt – краткая инструкция

Для установки плагина в папке, в которую установлена программа 7-Zip, необходимо создать папку Codecs. В созданную папку необходимо скопировать либо файл WinCryptHashers.64.dll, либо WinCryptHashers.32.dll, в зависимости от разрядности программы 7-Zip, и файл настроек WinCryptHashers.ini. После этого 7-Zip при запуске будет автоматически находить плагин и использовать его при отображении контрольных сумм.

Настройка

Для настройки работы плагина служит файл WinCryptHashers.ini. Данный файл является простым текстовым файлов, и имеет следующий вид:

[Main] MD2=0 MD4=0 MD5=1 SHA-1=0 SHA-256=0 SHA-384=0 SHA-512=0 ; ViPNet CSP 4.2 GOST R 34.11-94=0 GOST 34.11-2012 256=0 GOST 34.11-2012 512=0 [Create] MD5=md5:%HASH% *%FILENAME% ;SHA-256=sha256:%HASH% *%FILENAME% ;SHA-384=sha384:%HASH% *%FILENAME% ;SHA-512=sha512:%HASH% *%FILENAME% ;CRC32=sfv:%FILENAME% %HASH% ;CRC64=crc64:%HASH% *%FILENAME% ;BLAKE2sp=blake2sp:%HASH% *%FILENAME%

Секция Main определяет список дополнительных алгоритмов, которые будут использоваться при расчете контрольных сумм. Значения параметра 0 обозначает, что соответствующий дополнительный алгоритм не будет использоваться программой 7-Zip, 1 обозначает, что будет.

Важно. Включение дополнительных алгоритмов приводит к увеличению общего времени расчета контрольных сумм, поэтому рекомендуется включать только те алгоритмы, которые вам действительно нужны.

Секций Create определяет список алгоритмов, которые можно будет использовать для создания текстовых файлов с контрольных суммами. Список из данной секции не зависим от списка секции Main. Формат параметров имеет следующую структуру:

NAME=ext:mask

где Name – это название алгоритма, ext – это расширение файла, которое будет использоваться при создании нового псевдоархива с контрольными суммами, а mask – это строка, на основе которой формируется содержимое файла с контрольными суммами. В создаваемом файле каждому «упаковываемому» файлу будет соответствовать строка, в которой %HASH% будет заменено на строковое представление рассчитанного значения контрольной суммы, а %FILENAME% будет заменено на имя «упаковываемого» файла.

Например, при использовании маски «Hash value of %FILENAME%: %HASH%» может быть создан такой текстовый файл:

Hash value of File1.dat: 765F90AC Hash value of Dir\File2.dat: AA45BCF0

Использование

Для отображения в 7-Zip списка контрольных сумм файла используется команда контекстного меню файла CRC SHA\*. При ее выборе произойдет расчет контрольных сумм и их значения отобразятся в отдельном окне. Cодержимое окна можно cкопировать в буфер обмена нажав комбинацию клавиш Ctrl+C.

Для создания файла с контрольными суммами в диалоге упаковки файлов нужно выбрать соответствующий формат:

WinCryptHashers

После нажатия на кнопку ОК 7zip создаст текстовый файл с контрольными суммами.

Важно! Не включайте опцию Delete files after compression при создании файлов с контрольными суммами. Ее использование приведет к потере ваших файлов.

Маску можно также задать непосредственно в окне упаковки. Для этого в поле Parameters нужно ввести строку вида «f=mask», при этим в строке mask не должно быть пробелов. В качестве пробела нужно использовать символ нижнего подчеркивания «_», который будет замене на пробел в конечном файле.

Актуальная версия

  • Версия плагина: 1.3
  • Размер установочного дистрибутива: 181 KB
  • Дата установочного дистрибутива: 04 Dec 2023

Дополнительная информация

Просмотр контрольных сумм также можно выполнять прямо в стандартном диалоге свойств файла. Также вы можете создавать файлы с контрольными суммами прямо в Проводнике с помощью программы TC4Shell Подробнее.

Как узнать контрольную сумму файла в Windows

При скачивании ISO образов и архивов больших размеров всегда есть вероятность получить «битый» файл. Во времена Dial-UP такое было сплошь и рядом. И хотя сейчас такое случается намного реже, чтобы убедиться, что перед вами «оригинальный» файл придумали контрольные суммы, которые вычисляются на основе содержимого и позволяют заметить несоответствие даже одного байта.

То есть, если вы измените один байт в проверяемом файле, то и контрольная сумма такого файла так же изменится.

Для чего нужны контрольные суммы

У контрольных сумм две задачи:

  1. Убедиться, что файл скачался корректно.
  2. Убедиться, что файл не был изменен злоумышленниками.

Зная контрольную сумму оригинала, можно проверить является ли ваша копия подлинной.

Как вычислить контрольную сумму он-лайн

Контрольную сумму можно проверить он-лайн. Но я не буду рекомендовать этот способ, так как если размер вашего файла несколько ГигаБайт, то это займет много времени и всегда есть вероятность ошибки при передаче файла. Кроме того делиться своими файлами со сторонними сервисами не правильно.

Как узнать контрольную сумму файла в Windows

Разумнее вычислить контрольную сумму локально на своем компьютере. Это быстро и конфиденциально. В этой статье я опишу несколько способов получения контрольных сумм, как с помощью сторонних программ, так и непосредственно с помощью самой операционной системы Виндовс.

Файловый менеджер Total Commander

Total Commander — это популярный файловый менеджер, работающий на платформах Microsoft Windows и Android. В нем есть встроенная функция вычисления контрольных сумм.

Как узнать контрольную сумму файла в Windows

После чего вы можете выбрать один из алгоритмом вычисления контрольных сумм.

Как узнать контрольную сумму файла в Windows

По-умолчанию Total Commander создает файл с именем проверяемого и с расширением по имени выбранного алгоритма расчета контрольной суммы.

Файловый архиватор 7-Zip

7-Zip — свободный, бесплатный файловый архиватор с высокой степенью сжатия данных. Он поддерживает несколько алгоритмов сжатия и множество форматов данных, включая собственный формат 7z c высокоэффективным алгоритмом сжатия LZMA.

Этот архиватор имеет встроенную функцию вычисления контрольных сумм. Запустить ее можно прямо из контекстного меню Windows:

Как узнать контрольную сумму файла в Windows

Если выбрать «звездочку», то программа подсчитает сразу несколько контрольных сумм:

Как узнать контрольную сумму файла в Windows

Полученные данные можно выделить и скопировать в текстовый документ.

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

Чтобы посчитать контрольную сумму совсем не обязательно устанавливать специальные программы. И если вы не пользуетесь упомянутыми выше, то можете рассчитать контрольную сумму прямо из командной строки операционной системы.

Например, чтобы посчитать контрольную сумму SHA1 с помощью утилиты CertUtil нужно запустить командную строку Windows 10, 8 или Windows 7 и ввести следующую команду:

certutil -hashfile путь_к_файлу алгоритм

Вот пример ее работы через несколько минут:

Как узнать контрольную сумму файла в Windows

Считаем контрольную сумму в PowerShell

PowerShell — это средство автоматизации от Microsoft, с интерфейсом командной строки и языка сценариев, работает и включена в состав Windows 8 и новее.

Чтобы вычислить контрольную сумму файла необходимо выполнить команду Get-FileHash указав через пробел имя файла и алгоритм вычисления контрольной суммы:

Get-FileHash "Disk:\Full Path to file\File Name.Extension" -Algorithm SHA1

Обратите внимание, что полный путь и имя файла лучше заключить в двойные кавычки.

Как узнать контрольную сумму файла в Windows

По-умолчанию, если не указать тип контрольной суммы, то будет посчитана SHA-256.

Для алгоритмов вычисления контрольной суммы в Windows PowerShell поддерживаются следующие значения:

  • SHA1
  • SHA256 (по умолчанию)
  • SHA384
  • SHA512
  • MD5

Для оформления вывода в виде списка можно использовать параметр | Format-List. Например:

Get-FileHash "Disk:\Full Path to file\File Name.Extension" | Format-List

Тогда результат работы будет выглядеть так:

Как узнать контрольную сумму файла в Windows

Подробнее об использовании команды Get-FileHash можно прочитать на официальном сайте Microsoft — https://docs.microsoft.com/ru-ru/powershell/module/microsoft.powershell.utility/get-filehash

Какой алгоритм вычисления контрольных сумм самый правильный

MD5, SHA-1, SHA-256 и прочие – это разные алгоритмы хеш-функции. Хэши являются результатом работы криптографических алгоритмов, и представляют собой строку символов. Часто эти строки имеют фиксированную длину, независимо от размера входных данных.

MD5 самый быстрый, считается устаревшим, а SHA-256 имеет наименьшую вероятность коллизии, когда два разных файла имеют одинаковую контрольную сумму.

Для проверки целостности файла вам следует использовать тот, который предоставляет издатель. Если у вас на выбор есть несколько контрольных сумм, то лучше выбрать в следующей последовательности MD5, SHA-1, SHA-256, последний вариант является более предпочтительным.

Выводы

Если вы сомневаетесь в целостности скаченных файлов из интернета, особенно когда это касается оригинальных образов операционных систем, то проверьте их контрольную сумму. Сделать это можно как с помощью уже имеющихся у вас программ, так и воспользовавшись встроенными средствами операционной системы Windows.

Как проверить контрольную сумму дистрибутива Windows

Итак, вы долго и упорно загружали образ Windows, а теперь хотите убедиться, что по дороге не потерялось ни байта. Или дистрибутив вам принесла добрая фея, и вы хотите проверить, не связана ли она с пиратами. Для определения целостности дистрибутива вам понадобятся две вещи – контрольная сумма и программа для ее проверки.

Контрольные суммы образов Windows

В 2017 году Microsoft перенесла загрузки с MSDN на новый сайт https://my.visualstudio.com/downloads, где невозможно посмотреть контрольную суммы дистрибутива без подписки. Вы можете воспользоваться поиском на сайте https://msdn.rg-adguard.net/. Например, запрос windows 10 21h1 russian найдет все необходимое.

Это – половина дела.

certutil

Утилита входит в состав Windows 7 и новее.

certutil -hashfile [путь к ISO]\имя_файла.iso SHA1

certutil

Утилита поддерживает хэш-алгоритмы MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512, любой из которых можно указать в качестве параметра. Подробная справка по команде:

certutil -hashfile -?

File Checksum Integrity Verifier (fciv)

У Microsoft была собственная утилита командной строки для вычисления и проверки контрольной суммы файлов — File Checksum Integrity Verifier (fciv.exe). Она никогда официально не поддерживалось, но ее можно было загрузить из KB841290 (ныне удалена). Здесь она по прямой ссылке (41 кб). Далее я предполагаю, что вы знаете, куда распакована утилита, и где сохранен ISO-образ Windows.

Достаточно выполнить одну команду в командной строке (Пуск — Поиск — cmd):

\fciv.exe –sha1 \имя_файла.iso

Например, если утилита на рабочем столе, а ISO-образ в корне диска D, команда будет выглядеть так:

%userprofile%\desktop\fciv.exe –sha1 D:\en_windows_7_ultimate_x86_dvd_x15-65921.iso

А результат – контрольная сумма файла:

Если не указывать параметр -sha1 , утилита вычислит хеш MD5.

Как видите, все очень просто! Вы можете использовать этот способ для проверки контрольных сумм MD5 или SHA1 любых файлов.

Бонус: PsFCIV — модуль PowerShell для проверки целостности файлов на больших файловых ресурсах.

HashTab

Если командная строка вас пугает, можно проверить контрольную сумму более простым путем.

  1. Загрузите и установите программу HashTab.
  2. Щелкните правой кнопкой мыши на файле образа и выберите пункт «Свойства».
  3. Перейдите на вкладку «Контрольные суммы» (File Hashes).

*

Метки: диагностика Информация в статье применима к Windows 7 и новее

Об авторе

Вадим — владелец этого блога, и почти все записи здесь вышли из-под его пера. Подробности о блоге и авторе здесь. Поддержать автора вы можете тут.

Вас также может заинтересовать:

  • Трюки утилиты certutil
  • Как преодолеть ограничение в 4GB при копировании install.wim на флэшку FAT32 и создать ISO
  • Как бесплатно скачать дистрибутив Windows или готовую виртуальную машину

Я в Telegram

Подпишитесь на канал и читайте интересные записи чаще! Есть вопросы? Задайте их в чате.

комментариев 19

Спасибо за HashTab. Я не знал, что есть такая программа. У меня к вам два вопроса по командной строке:
1. В какой папке удобно хранить утилиты для работы с командной строкой? У меня всегда возникают трудности с указанием путей.
2. И потом, как быстро сравнить полученный результат?

Ваша оценка: Thumb up Thumb down0

Hauer,
1. В любой, прописав ее в PATH.
2. На скриншоте HashTab видно поле для сравнения.

Ваша оценка: Thumb up Thumb down0

Вадим, второй вопрос тоже по командной строке.

Ваша оценка: Thumb up Thumb down0

Hauer, да просто скопируйте SHA1/MD5 из вывода FCIV в блокнот, а на следующую строку — контрольную сумму. Сразу разницу увидите. Если хотите автоматизировать, нужно скрипт писать: Скриптовые языки администрирования Windows.

Ваша оценка: Thumb up Thumb down0

Вадим, я вижу, что эта статья довольно не новая, но у меня такой вопрос: очень часто на форумах просят выложить проверку совпадения «Контрольных сумм» дистрибутива с оригиналом ( к примеру здесь — http://forum.oszone.net/thread-236210-2.html пост № 13 ). У меня установлена Windows 7 с купленного диска ( Windows 7 SP1 BOX ). Можно ли как-то или чем-то проверить это самое — совпадение «Контрольных сумм» дистрибутива с оригиналом?
Не знаю — понятен мой вопрос или нет…

Ваша оценка: Thumb up Thumb down0

Игорь, проверка контрольной суммы позволяет выяснить, не пользуется ли человек г-сборкой, поведение которой непредсказуемо. Вам нет смысла проверять.

Ваша оценка: Thumb up Thumb down0

Vadim Sterkin: Вам нет смысла проверять »

Спасибо за ответ!

Ваша оценка: Thumb up Thumb down0

А как проверить контрольную сумму образа Microsoft Office 2013 Pro Plus Volume?
Вернее механизм проверки понятен, непонятно по какому адресу Microsoft публикует контрольные суммы такого Volume продукта.

Ваша оценка: Thumb up Thumb down0

В случае с легальными источниками контрольная сумма есть там, где лежит дистрибутив.

Ваша оценка: Thumb up Thumb down0

А как в связи с этим понимать ситуацию, когда объявленный (на сайте, «левом», понятно) размер скачиваемого образа (например iso Windows XP ) 593 мб, а реальный размер скаченного — 617 мб? SHA1 файлов совпадает и соответствует SHA1 оригинала с сайта МС.
Т.е. хеш совпадает, а размер — нет.

Ваша оценка: Thumb up Thumb down0

Левый сайт -> левый размер? 🙂

Ваша оценка: Thumb up Thumb down0

Возможно кому-нибудь понадобится. В Win7/8 контрольную сумму можно вычислить при помощи встроенной утилиты CertUtil:

CertUtil -hashfile [путь к ISO]\имя_файла.iso MD5

Это был пример для вычисления MD5. Также доступные алгоритмы: MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512.

Ваша оценка: Thumb up Thumb down+3

Спасибо, Салават, я не знал.

Ваша оценка: Thumb up Thumb down0

Вопрос: а где взять контрольные суммы оригинальных образов windows — то, с чем сравнивать?
Конкретно мне нужны контрольные суммы оригинального образа Windows 8 Professional

Ваша оценка: Thumb up Thumb down0

  • maxxdan 28.10.2014 в 20:38

«Microsoft публикует контрольные суммы своих продуктов на MSDN» — нашел ответ в начале поста, виноват)

Ваша оценка: Thumb up Thumb down0

Владимир Раменский07.09.2016 в 21:32

Подскажите, а как проверить контрольную сумму уже записанного диска на Windows платформе? Как это делается на Linux статей хватает, а вот про Windows ничего найти не могу.

Ваша оценка: Thumb up Thumb down0

Ваша оценка: Thumb up Thumb down0

Ваша оценка: Thumb up Thumb down0

Угу, они перенесли загрузки в https://my.visualstudio.com/downloads, но там без подписки ничего не видно кмк.

Ваша оценка: Thumb up Thumb down0

Узнать хеш сумму файла стандартными средствами командная строка

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

Нам поможет утилита CertUtil по умолчанию входящая в комплект Windows

Чтобы узнать хеш сумму файла необходимо зайти в командную строку: (клавиши Win+R и набираем cmd, либо «Пуск-Все программы-Стандартные-Командная строка«)

и выполнить команду

где, c:file — путь до файла

По умолчанию утилита считает хеш-сумму с помощью SHA1

Если хотите использовать другой, пожалуйста, доступны MD5 MD4 MD2 SHA512 SHA384 SHA256 SHA1

123-certutil-hashfile

Также можно воспользоваться утилитой FCIV (File Checksum Integrity Verifier utility) эта утилита может не входить по умолчанию в систему. Скачать можно ее с оф.сайта http://support.microsoft.com/ru-ru/kb/841290

Распаковываем и кладем файл fciv.exe для удобства в папку C:windowssystem32

Теперь можно выполнив команду

узнать хеш-сумму файла, по умолчанию MD5, но также доступен SHA1

Из полезных функций хочется отметить возможность проверить автоматом хеш-суммы всех файлов в папке, а также загрузить их в XML-файл для последующей сверки

Считаем хеш-сумму всех файлов в папке

Создаем файл d:hashes.xml, который содержит хеши и пути до файлов всех файлов папки d:Folder

fciv -add d:Folder -r -xml d:hashes.xml

Сверяем хеш суммы файлов по ранее созданному xml файлу

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *