Контрольная сумма файла: что это такое и как проверить

Что такое контрольная сумма

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

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

Также необходимо упомянуть, что контрольную сумму нельзя использовать для получения исходных данных. То есть нельзя «расшифровать» хеш-сумму и получить данные которые были хешированы, хеш-сумму можно только сравнить с другой хеш-суммой. Это особенность открывает дополнительные возможности. Например, хеш-суммы используются для хранения паролей. Когда вы регистрируетесь на каком-то сайте и вводите свой пароль, то он не хранится на сервере в открытом виде. Вместо этого хранится только его контрольная сумма. А когда вы входите в свой аккаунт с использованием пароля, система получается ваш пароль, высчитывает его хеш-сумму и сравнивает с хеш-суммой, которая хранится на сервере. Если хеш-суммы совпали, значит пароль верный и вы можете войти в аккаунт, если хеш-суммы не совпадают, значит пароль не верный и вас перенаправляют на страницу для восстановления пароля.

Для высчитывания контрольной суммы существует множество различных алгоритмов или так называемых хеш-функций. Самыми известными и популярными алгоритмы являются: CRC32, MD5, SHA-1 и SHA-2. Но, есть и множество других алгоритмов, некоторые из которых имеют широкое применения, а некоторые используются только для специфических задач. При этом часть существующих алгоритмов признаны устаревшими или уязвимыми и больше не используются. Так, алгоритм MD5 практически полностью перестал использоваться поскольку выяснилось, что он может выдавать одинаковые значения для разных входных значений.

Для примера продемонстрируем, как выглядит контрольная сумма на практике. Например, возьмем строку «Hello, world!» и высчитаем ее контрольную сумму с использованием нескольких популярных алгоритмов.

Алгоритм Значение
Adler32 205e048a
CRC32 ebe6c6e6
Haval 5711dea10d85b988fcb1eed99ce7310c
MD2 8cca0e965edd0e223b744f9cedf8e141
MD4 0abe9ee1f376caa1bcecad9042f16e73
MD5 6cd3556deb0da54bca060b4c39479839
RipeMD128 3cbb446fc20277b2a4e4b8b8b40aa962
RipeMD160 58262d1fbdbe4530d8865d3518c6d6e41002610f
SHA-1 943a702d06f34599aee1f8da8ef9f7296031d699
SHA-256 315f5bdb76d078c43b8ac0064e4a0164612b1fce77c869345bfc94c75894edd3
SHA-384 55bc556b0d2fe0fce582ba5fe07baafff035653638c7ac0d5494c2a64c0bea1cc57331c7c12a45cdbca7f4c34a089eeb
SHA-512 c1527cd893c124773d811911970c8fe6e857d6df5dc9226bd8a160614c0cd963a4ddea2b94bb7d36021ef9d865d5cea294a82dd49a0bb269f51f6e7a57f79421
Tiger b5e5dd73a5894236937084131bb845189cdc5477579b9f36
Whirlpool 238034e71c9f4d712ef02f8fe109bc1f32425530088c1ea13786e1ffdc953a7d567db4aba11ce0226efdd5ed5d55abd087b58122f891e61df996a37e595131b5

Как видно, каждый алгоритм выдает значение, которое не имеет совершенно ничего общего с исходными данными. И сколько раз мы бы не высчитывали контрольную сумму строки «Hello, world!», мы каждый раз будем получать одни и те же значения.

Как создать MD5-хеш файлов с помощью MD5Checker?

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

Единственная максимально удобная программа для работы с MD5 — это приложение MD5Checker. Скачать программу можно с официального сайта
. Несмотря на то, что программа имеет англоязычный интерфейс, пользоваться ей достаточно просто.

Программа по умолчанию настроена на хеширование программных файлов, архивов и ISO-образов. Поэтому если Вы хотите пользоваться этим приложением допустим для музыки и видео, то необходимо для начала поменять одну единственную настройку — указать маску для файлов, с которыми будет работать программа. Для этого нужно зайти в пункт меню «Tools / Options» и в поле «Include» указать символ *
(что означает «все файлы»).

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

Для создания MD5-хеша нужно перетащить выбранные файлы из папки в окно программы — и программа автоматически начнет вычислять MD5-суммы для всех выбранных файлов и всех файлов в подпапках (удовлетворяющих заданной нами маске). Посчитанные суммы будут отображены в столбце «Current MD5» («Текущая MD5»). Теперь остается только сохранить полученные значения в файл, нажав кнопку «S To» («Сохранить в»).

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

Поэтому перед сохранением файла имеет смысл перейти в корень папки, нажав соответствующую кнопку.

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

При этом можно убедиться, что пути к файлам сохранены относительные, т.е. не содержат буквы диска, на котором расположены. Такой MD5-файл можно хранить в папке вместе с файлами, и в будущем на любом компьютере проверять целостность файлов этой папки.

Проверка хеша в Windows 10.

Начиная с версии Windows 10 2004 (обновление за май 2020 года), Microsoft начинает предлагать хэши, которые помогут вам проверить целостность данных и подлинность загруженного файла ISO для Windows 10.

Хеш — это математическая подпись (текстовая строка), которая рассчитывается с использованием криптографического алгоритма (SHA-1, SHA-256, MD5) для данных фрагмента. Если какое-либо изменение произойдет после того, как контрольная сумма была вычислена, значение хеш-данных также изменится.

В этом случае хэши SHA256, которые предоставляет Microsoft, позволяют использовать PowerShell для проверки того, что загружаемый ISO-файл Windows 10 не был подделан или поврежден.

В этом руководстве вы узнаете, как проверить целостность и подлинность файла ISO Windows 10 версии 2004.

Значение файла возможно повреждено. Контрольная сумма заголовка файла не соответствует вычисленной контрольной сумме?

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

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

Каждый раз, когда мы включаем наши компьютеры, первая программа для работы с комплементарным металлоксидным полупроводником или CMOS. Это чип с батарейным питанием, расположенный на материнской плате, и он хранит любые данные, относящиеся к BIOS. Однако, когда содержимое CMOS не идентифицировано с помощью проверки Checksum, вы столкнетесь с ошибкой контрольной суммы. Эта проблема возникает по нескольким причинам. Один из них — когда ваша батарея CMOS мертва. Другая причина заключается в том, что ваш CMOS неисправен, что не позволяет сохранить информацию. Ваша система восстановит все заводские настройки хранилища при возникновении ошибки контрольной суммы, и некоторые из ваших изменений будут изменены.

Алгоритм действий

В Total Commander находим файл, который нуждается в проверке. Переходим к проблеме, как посмотреть контрольные суммы. Запускаем Total Commander. Там в одной из панелей необходимо сменить текущий диск на тот, в котором находится необходимый файл. Для этой цели воспользуйтесь кнопками или выпадающим списком, которые расположены вверху на панели инструментов. Откройте необходимые пункты из списка директорий, кликнув на них мышкой, и перейдите в нужный каталог с файлом. Следующим шагом для решения задачи, как узнать контрольные суммы, является работа в настройках параметров расчета КСФ. Открываем соответствующий диалог настроек. Чтобы это осуществить, необходимо развернуть раздел «Файл» в главном меню приложения, после чего кликнуть по команде «Создать SFV-файл контрольных сумм (CRC)…». Провидите настройки параметров формирования контрольных сумм. Установите флажок «MD5» в диалоге с названием «Создание SFV-файлов контрольных сумм (CRC)»

Если необходимо, чтобы результатом РКС файла был MD5-хеш (обращаем на это внимание, так как большинство контрольных сумм, которые публикуются в интернете — именно MD5-хеши). Снимаем значок флажка «Для каждого отдельного файла создать отдельный SFV-файл»

Выделяем команду «Сохранить файл контрольных сумм как:» Вводим путь и соответствующее имя файла, куда будет помещен полученный результат расчета контроль суммы. Рассчитываем КСФ. В соответствующем окне «Создание SFV-файлов контрольных сумм (CRC)» необходимо нажать кнопку «OK», после чего будет произведен процесс расчета контрольной суммы. Вы сможете наблюдать за ходом процесса, который будет отображаться в появившемся окне индикатором прогресса. При большом объеме исходного файла, вычисление контрольной суммы займет немало времени. Во всяком случае, необходимо дождаться окончания операции. Последним шагом станет проверка КСФ. Это можно сделать, если открыть в текстовом редакторе или любом просмотрщике созданный файл контрольных сумм. Лучше воспользоваться встроенной функцией просмотра в Total Commander. Для этого необходимо выделить сгенерированный файл вычисленных контрольных сумм в известной нам панели Total Commander, после чего нажать клавишу F3. В файле появится строка, которая структурно состоит из двух частей. Обратите внимание, что первая часть строки расположена до знака «*» и является соответствующим символическим представлением КСФ. 

Итоги

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

Многие сталкиваются с такой проблемой. Скачал, например, файл-образ windows
, записал на диск, а при установке привод не может прочесть данные и, как итог, windows не устанавливается. К этому часто приводят ошибки при скачивании и записи образа. Как бороться? Читаем статью.

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

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