Что такое контрольная сумма? (Примеры, варианты использования и калькуляторы)

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

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

Простой пример контрольной суммы

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

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

Это проверка.
120EA8A25E5D487BF68B5F7096440019

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

Это проверка
CE114E4501D2F4E2DCEA3E17B546F339

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

Вариант использования контрольной суммы

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

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

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

Например, скажем, веб-сайт предоставляет контрольную сумму MD5: 5a828ca5302b19ae8c7a66149f3e1e98 для загруженного файла. Затем вы используете свой собственный калькулятор контрольной суммы для создания контрольной суммы с помощью той же криптографической хеш-функции, в данном примере MD5, для файла на вашем компьютере. Соответствуют ли контрольные суммы? Большой! Вы можете быть очень уверены, что эти два файла идентичны.

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

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

Калькуляторы контрольной суммы

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

Одним из отличных бесплатных калькуляторов контрольных сумм является Microsoft File Checksum Integrity Verifier, для краткости называемый FCIV. FCIV поддерживает только криптографические хеш-функции MD5 и SHA-1, но на данный момент они наиболее популярны.

Посмотрите, как проверить целостность файлов в Windows с помощью FCIV для полного руководства. Microsoft File Checksum Integrity Verifier — это программа командной строки, но она очень проста в использовании.

IgorWare Hasher — еще один отличный бесплатный калькулятор контрольных сумм для Windows. Он полностью переносим, ​​поэтому вам не нужно ничего устанавливать. Если вы не знакомы с инструментами командной строки, эта программа, вероятно, является лучшим выбором. Он поддерживает MD5 и SHA-1, а также CRC32. Вы можете использовать IgorWare Hasher, чтобы найти контрольную сумму текста и файлов.

JDigest — это калькулятор контрольной суммы с открытым исходным кодом, который работает как в Windows, так и в MacOS и Linux.

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

Ссылка на основную публикацию