Если вы какое-то время были в мире компьютеров и, почему бы и нет, даже в сфере кибербезопасности, вы, возможно, слышали термин «контрольная сумма» и там, даже в обычных разговорах типа «Как дела?». Это происходит главным образом потому, что контрольные суммы по-прежнему являются надежным способом оценки того, соответствует ли пакет данных или отдельный элемент определенным параметрам или претерпел различные изменения.
Если вы когда-либо загружали материалы с открытым исходным кодом с различных веб-сайтов, вы могли заметить, что у некоторых из них это значение контрольной суммы гордо отображается на веб-сайте, скорее всего, вместе с сообщением о том, чтобы проверить, соответствует ли ваш загруженный файл совпадает с файлом на веб-сайте. Если этот совет и та загадочная строка, состоящая из, казалось бы, случайных буквенно-цифровых символов, смутила вас, мы собираемся пролить свет на это через некоторое время.
Что такое контрольная сумма?
С технической точки зрения контрольная сумма-это всего лишь небольшой блок данных, который получен из другого блока данных, чтобы служить простой, но важной цели: выполнять проверки и определять, не появлялись ли какие-либо ошибки в данных во время хранение или передача. Другими словами, это крошечный индикатор, который позволяет нам узнать, были ли изменены исходные данные.
Очень важно отметить, что эта контрольная сумма не возникает просто так, она фактически создается с помощью операции, называемой функцией контрольной суммы. Однако вы также можете столкнуться с этим в форме алгоритма контрольной суммы, просто чтобы вы знали. Дизайн алгоритма может быть разным, но, как показывает опыт, эффективный алгоритм контрольной суммы должен выводить существенно другое значение (контрольную сумму) даже для малейших изменений, внесенных во входные данные, независимо от типа документа или данных.
Для чего используется контрольная сумма?
Чаще всего небольшие блоки данных (контрольные суммы) используются для проверки целостности данных в различных файлах, как мы кратко объясняли ранее во вводной части нашей статьи. Например, если разработчик создает программу, он также может сгенерировать контрольную сумму и отобразить ее на своем веб-сайте, чтобы вы также могли проверить контрольную сумму документа после его загрузки на свой компьютер и посмотреть, соответствует ли она исходному значению.
Если контрольная сумма текущего файла (или входных данных) не совпадает с сохраненным значением ранее вычисленной контрольной суммы, это явный признак того, что входные данные были каким-то образом подделаны. Если контрольная сумма текущих входных данных совпадает с той, которая была вычислена ранее (например, когда набор данных был впервые сгенерирован), то весьма вероятно, что данные не претерпели каких-либо изменений или искажений, случайно или намеренно..
Различные типы контрольных сумм
Как и алгоритмы криптографии, алгоритмы контрольной суммы могут быть разных типов, и каждый из них может быть более подходящим для определенной цели, чем его аналоги. Мы собираемся перечислить наиболее распространенные типы алгоритмов контрольных сумм и рассказать вам немного больше о каждом из них, чтобы вы могли лучше понять концепцию.
Если вы не совсем разбираетесь в технологиях или вам не нравится техническая неразбериха, мы предлагаем вам пропустить эти несколько разделов, в которых объясняются наиболее часто используемые формы алгоритмов контрольной суммы, и сразу перейти к нашим инструкциям о том, как вы можете использовать контрольные суммы для проверки файлов.
Слово четности или байт четности
Мы начинаем с простейшего алгоритма контрольной суммы, более известного как продольная проверка четности. Этот алгоритм работает следующим образом: данные разбиваются на слова с фиксированным числом битов (n), а затем вычисляется «исключающее ИЛИ» (XOR) для всех слов, которые он только что обработал. Результат этого вычисления добавляется к сообщению в виде дополнительного слова.
Чтобы проверить целостность сообщения, принимающая сторона вычисляет «исключающее ИЛИ» (XOR) всех слов, включая контрольную сумму, и проверяет, является ли результат словом, состоящим из (n) нулей. Если это так, все в порядке, но если нет, он узнает, что где-то во время передачи произошла ошибка.
Хотя это самый простой алгоритм контрольной суммы, он не самый эффективный. Алгоритм слова/байта четности успешно обнаруживает неверную контрольную сумму, если какая-либо ошибка передачи возникает таким образом, что затрагивает либо отдельный бит ввода, либо нечетное количество битов.
Однако, если биты расположены в одной позиции в двух разных словах и ошибка влияет на них, алгоритм не обнаружит ошибку, вводя вас в заблуждение, заставляя вас поверить, что все в порядке, хотя на самом деле это не так. Тот же сценарий может произойти, если вы поменяете местами два или более слов; алгоритм не обнаруживает ошибки, что может быть довольно опасно.
Существует третий сценарий, в котором вы можете случайным образом выбрать затронутые биты. В этом случае вероятность того, что будет обнаружена двухбитовая ошибка, равна 1/n (n=фиксированное количество битов, о котором мы говорили выше).
Суммарное дополнение
Как и следовало ожидать, из-за того, что он несовершенен, была предпринята попытка усовершенствовать упомянутый и описанный выше алгоритм, поэтому был разработан алгоритм суммирования. В отличие от алгоритма проверки на четность, дополнение суммы добавляло все «слова» в виде двоичных беззнаковых чисел, при этом отбрасывая каждый бит переполнения, а также добавляя общее дополнение в качестве контрольной суммы.
Чтобы проверить сообщение, принимающая сторона должна добавить все слова, как это делает алгоритм продольной проверки четности, включая контрольную сумму. Если полученная строка не является словом, полным нулей, это явный признак того, что в какой-то момент произошла ошибка передачи. Однако этот алгоритм также может обнаруживать только однобитовые ошибки. Однако в SAE J1708 используется промодульная сумма.
В зависимости от позиции
Зависимый от позиции алгоритм контрольной суммы направлен на исправление недостатков обеих функций, описанных выше, поскольку они не могут точно обнаружить многие общие ошибки, которые могут возникать более чем на одном бите. Некоторые примеры этих распространенных ошибок включают вставку или удаление слов со всеми битами, установленными на ноль, а также изменение порядка слов данных.
В результате был разработан алгоритм контрольной суммы, позволяющий обойти эти ограничения и точно информировать об этих типах ошибок. Принцип работы этого алгоритма определяется самим его названием: позиционно-зависимый. Таким образом, этот алгоритм проверяет не только значение каждого слова во входных данных, но и его позицию в последовательности. Поскольку учитывается более одного параметра, функция контрольной суммы, зависящая от позиции, увеличивает затраты на вычисление контрольной суммы.
Примерами алгоритмов контрольной суммы, зависящих от позиции, являются Adler-32, циклический избыточный контроль (CRC) и контрольная сумма Флетчера.
Нечеткая контрольная сумма
Этот тип алгоритма контрольной суммы был разработан как эффективный способ обнаружения спама в электронной почте. Эта функция работает путем создания совместных баз данных, поступающих от нескольких интернет-провайдеров. Эти базы данных содержали сообщения электронной почты, которые были либо подозрительными, либо зарегистрированы как спам.
Однако, поскольку содержание каждого спама может сильно отличаться от следующего, это сделает классические алгоритмы контрольной суммы и проверки неэффективными и, следовательно, нецелесообразными. В свою очередь, использование алгоритма нечеткой контрольной суммы может уменьшить текст письма до минимума, а затем вычислить контрольную сумму как обычно.
Причина, по которой этот метод работает, заключается в том, что он увеличивает вероятность того, что в немного разных электронных письмах будет генерироваться одна и та же контрольная сумма. В настоящее время существуют некоторые централизованные службы (например, DCC), которые получают сообщения от сотрудничающих интернет-провайдеров контрольных сумм всех электронных писем, обнаруженных их программным обеспечением для обнаружения спама.
Существует определенный порог, который не может превышать количество отправленных нечетких контрольных сумм. Если это так, то база данных отмечает отправку как потенциальный спам.
Как использовать контрольную сумму файла?
Если вы серьезно относитесь к безопасности своего компьютера и понимаете опасность случайной загрузки файлов слева и справа с сомнительных веб-сайтов, то вы можете использовать контрольную сумму для проверки целостности файлов перед их загрузкой или копированием в любое место. иметь возможность нанести некоторый ущерб.
Это мрачное напоминание о том, что практически любой источник может быть скомпрометирован, а искусно замаскированная атака может заставить вас поверить в то, что вы действительно загрузили файл из надежного официального источника. Поэтому убедитесь, что вы действительно скачали правильный файл,-это первостепенное значение для безопасности вашего компьютера.
1. Окна
К сожалению, в Windows нет утилиты для проверки контрольных сумм с графическим интерфейсом пользователя, поэтому вам придется либо использовать ее инструмент CMD, либо загрузить сторонний инструмент с удобным интерфейсом. Мы рекомендуем использовать второй вариант, особенно если у вас нет опыта проверки целостности данных, контрольных сумм и использования каких-либо инструментов проверки целостности данных.
В этой статье мы собираемся использовать IrfanView, популярную бесплатную программу просмотра изображений, о которой вы, возможно, слышали или уже установили и готовы на своем ПК. В любом случае, перейдите на страницу загрузки IrfanView и обратите внимание, что под каждой версией, которую вы можете загрузить с официального сайта, есть дополнительная строка, которая может выглядеть немного тарабарщиной, если вы никогда раньше не видели ничего подобного.
Строка должна выглядеть примерно так:
(Контрольная сумма SHA-256: 6a67f079f8036a30e9e13fd9baecf0d37da18106050880a3f12845e445f8786f)
Запишите это и оставьте пока как есть. Мы вернемся к нему в кратком руководстве через несколько минут. А пока просто загрузите любую версию IrfanView, которую хотите, но не забудьте отметить странно выглядящую строку под ссылкой для загрузки.
1. Использование certutil
- Загрузить IrfanView
- Нажмите комбинацию клавиш Win + R на клавиатуре.
- Введите CMD и нажмите кнопку Enter на клавиатуре.
- В CMD используйте CD для доступа к папке, в которую вы загрузили IrfanView.
- Введите следующую команду, но замените FILE файлом, для которого требуется выполнить проверку целостности (включая его расширение), и HASH с алгоритмом, указанным разработчиком (в нашем случае это SHA256 )
-
certutil-hashfile ХЭШ ФАЙЛА
-
- Нажмите клавишу Enter на клавиатуре.
- Убедитесь, что две контрольные суммы идентичны
В случае ошибки очень маловероятно, что две контрольные суммы (официальная и рассчитанная с помощью certutil) будут практически идентичными. Как мы упоминали выше, любое изменение во входном файле должно генерировать совершенно другую контрольную сумму, которая должна быть сразу очевидна. Однако случаются и более странные вещи, и вам определенно лучше перестраховаться, чем сожалеть, поэтому вам следует проверить это, чтобы убедиться, что ваша контрольная сумма ТОЧНО совпадает с той, что указана на веб-сайте.
Если две контрольные суммы идентичны, поздравляем! У вас есть файл со 100% целостностью, что означает, что вы загрузили копию того же файла, что и веб-сайт, который в настоящее время размещает, и его можно безопасно хранить на своем компьютере или установить, если это применимо. Переходим к следующему.
Обратите внимание, что certutil работает с несколькими алгоритмами хеширования, отличными от SHA256, включая MD2, MD4, MD5, SHA1, SHA384 и SHA512. Поэтому вы можете смело менять тип хэша на тот, который использует официальный владелец/создатель файла, если он отличается от SHA256.
2. Использование инструмента контрольной суммы MD5
MD5 Checksum Tool-это бесплатное программное решение, которое было разработано для того, чтобы помочь вам вычислить хэши файлов, не имея опыта работы с аналогичными программами и не обладая навыками работы с ПК. Вы просто устанавливаете программу, загружаете в нее файл и позволяете ей делать всю тяжелую работу.
Кроме того, программа имеет некоторые дополнительные функции, в том числе обработку пакетных файлов, так что вы можете проверять целостность нескольких файлов одновременно, поддержку нескольких алгоритмов хеширования и компонент, который позволяет сравнивать файл с контрольной суммой, даже не надо смотреть на них.
Конечно, вы можете заменить Инструмент контрольной суммы MD5 с любым другим сторонним инструментом, который, по вашему мнению, подходит для этой работы, но мы нашли этот и очень полюбили его. Поэтому, если вы хотите придерживаться нашего рекомендованного инструмента, вы можете найти рабочую версию этой программы из надежного источника и предпринять следующие шаги:
- Загрузите MD5 Checksum Tool на свой компьютер.
- Запустите только что загруженный исполняемый файл установщика.
- Следуйте инструкциям на экране, чтобы установить приложение на свой компьютер.
- Запустить инструмент контрольной суммы MD5.
- Нажмите кнопку … рядом с полем файла.
- Перейдите в папку, в которую вы загрузили IrfanView на свой компьютер.
- Дважды щелкните исполняемый файл установщика IrfanView, чтобы загрузить его в MD5 Checksum Tool.
- Нажмите кнопку Хеш .
- Обратите внимание, что все поля заполнены строками символов.
- Сравните соответствующий хэш из списка с хешем, отображаемым на веб-сайте IrfanView.
Если вы просто не хотите тратить время на проверку того, что каждый символ в вашем хеш-коде соответствует контрольной сумме, отображаемой на веб-сайте, MD5 Checksum Tool предлагает вам более простой способ выполнить эту утомительную операцию. Однако вы должны знать, что этот метод работает только для хешей MD5, поэтому в нашем случае он не сработает. Просто выполните следующие действия, чтобы успешно сравнить файл с известной контрольной суммой:
- Запустить инструмент контрольной суммы MD5.
- Перейдите к инструменту”Сравнить”.
- Во втором (нижнем) поле нажмите кнопку …
- Перейдите в папку, в которой вы сохранили файл, который хотите проверить.
- Дважды щелкните файл, чтобы загрузить его в инструмент контрольной суммы MD5.
- Скопируйте известный хэш MD5 в поле ниже.
- Нажмите кнопку Сравнить .
Если у загруженного вами файла хэш MD5 отличается от хэша, который вы вставили в поле ниже, MD5 Checksum Tool будет любезно сообщить вам об этом. Это также хороший признак того, что вы используете другую версию файла, возможно, в которую были внесены изменения, и это не для развлечения.
Стоит отметить, что MD5 Checksum Tool позволяет сравнивать два файла друг с другом одинаковым образом. Однако вместо использования второго раздела вкладки «Сравнение» следует использовать первый раздел, содержащий два поля, в которые можно загружать файлы.
После того, как оба файла заблокированы и загружены, вы должны нажать кнопку «Сравнить» (верхняя). Если ваши файлы идентичны, MD5 Checksum Tool сообщит вам об этом, а также уведомит вас, если их контрольная сумма отличается.
Как видите, MD5 Checksum Tool, как и многие другие подобные сторонние утилиты контрольной суммы, которые поставляются с графическим интерфейсом пользователя (GUI), предлагает удобный и упрощенный способ проверки целостности файлов на вашем компьютере. ПК. Однако в некоторых отношениях он также ограничен. Например, вы не можете сравнить файл с контрольной суммой SHA-256, поэтому вам, возможно, придется импровизировать.
3. Использование FCIV
Хотя вы можете легко использовать описанную выше служебную программу certutil CMD, вам может быть интересно узнать, что Microsoft также выпустила еще одну служебную программу CMD под названием FCIV, сокращенно от File Checksum Integrity Verifier. Название этого инструмента (длинная форма) в значительной степени попадает в точку, поэтому вы точно знаете, что он будет делать, еще до того, как воспользуетесь им.
Несмотря на то, что это инструмент CMD, разработанный и выпущенный Microsoft, FCIV по умолчанию недоступен ни в одной из версий Windows, поэтому вам придется установить и загрузить его самостоятельно, прежде чем приступить к работе. Стоит отметить, что этот инструмент, вероятно, устарел и был разработан для работы со старыми версиями операционной системы Windows, такими как Windows 2000, XP и Windows Server 2003. Кроме того, в декабре 2004 года была выпущена последняя версия FCIV, которая довольно давно.
Однако, если вы решили, что сделаете все возможное, чтобы найти, загрузить и установить FCIV на свой компьютер, то обязательно сделайте это и вернитесь сюда, как только вы его настроите и готовы использовать его. Мы направим вас по официальной ссылке Microsoft, но она, похоже, больше не работает, так что вы можете выбрать ее самостоятельно. Готовый? Теперь вот как вы можете использовать FCIV, чтобы быстро проверить целостность ваших файлов:
- Нажмите комбинацию клавиш Win + R на клавиатуре.
- Введите CMD и нажмите Enter.
- В CMD введите следующую команду, но заменив FILENAME фактическим файлом, который вы хотите проверить (включая расширение):
-
fciv.exe-оба FILENAME
-
- Нажмите клавишу Enter на клавиатуре.
Если вы все сделали правильно, вы должны увидеть два хэша отсканированного файла: MD5 и SHA-1. Видите ли, в этом и заключается проблема использования FCIV, и почему почти никто его больше не использует, потому что он почти устарел и поддерживает только MD5 и SHA-1 в качестве своих алгоритмов. Короче говоря, вам было бы лучше использовать инструмент контрольной суммы MD5, о котором мы говорили выше, или инструмент certutil, который мы описали ранее.
Mac
Если вы когда-либо использовали Mac, вы, вероятно, знаете его терминал и точно знаете, на что он способен и как использовать его в своих интересах. Ну, не если вы использовали Mac из-за его простоты и удобства, а просто для того, чтобы он был коротким и дружелюбным, у Mac есть консоль, похожая на CMD, и она называет ее просто Терминал
1. Использование терминала
Терминал может помочь вам множеством разных способов, поскольку он полностью упакован различными инструментами, которые вы можете использовать, и даже если он не включает его по умолчанию, вероятно, есть кто-то, кто придумал способ загрузить его или предоставил пользователям Mac лучшую альтернативу. В любом случае, в Терминале есть встроенный инструмент, который вы можете использовать для генерации контрольной суммы, которую вы можете сравнить с уже существующей.
При этом мы собираемся описать несколько шагов, которым вы можете следовать, если хотите проверить контрольную сумму файла на своем Mac. Обратите внимание, что для этой демонстрации мы использовали исполняемый файл установщика IrfanView, так как он также предлагает контрольную сумму прямо под своей ссылкой для загрузки, что упрощает принятие к сведению. Другие разработчики (например, Ubuntu) предлагают контрольную сумму в отдельном текстовом документе, который вы можете открыть и проверить значение после его загрузки. Не волнуйтесь, это та же технология, но требует лишь нескольких дополнительных действий.
Итак, естественно, первое, что вам нужно сделать, это загрузить исполняемый файл установщика IrfanView на свой компьютер (или другой файл, для которого у вас уже есть контрольная сумма).
- На Mac щелкните значок увеличительного стекла (вверху справа).
- Введите терминал в специальное поле поиска.
- Выберите вариант Терминал из списка результатов (должен быть первым результатом).
- Используйте команду cd (изменить каталог) в Терминале, чтобы перейти к папке, в которую вы загрузили файл (cd Downloads, если вы сохранили его в папке Downloads).
- Оказавшись в папке, в которой вы сохранили файл, введите следующую команду в Терминале, но замените HASH на тип хэша (в нашем случае это 256) и FILENAME на имя файла, включая его расширение (наше- iview457_x64_setup.exe )
-
shasum-a HASH FILENAME
- Ваша команда должна выглядеть примерно так:
shasum-a 256 iview457_x64_setup.exe
-
- Проверьте контрольную сумму в следующей строке окна Терминала (она должна там отображаться).
- Сравните контрольную сумму из окна Терминала с известной (например, с контрольной суммой с веб-сайта IrfanView, если вы использовали наш пример).
Терминал Mac поддерживает несколько алгоритмов хеширования, что позволяет использовать несколько вариантов. Мы собираемся перечислить алгоритмы, которые вы можете использовать для вычисления контрольных сумм, а также команды, которые вы должны ввести в Терминале, чтобы они работали. Как обычно, не забудьте заменить FILENAME фактическим файлом документа, для которого вы вычисляете контрольную сумму (включая его расширение).
- MD5:
-
md5 FILENAME
-
- SHA1
-
shasum-a 1 ИМЯ ФАЙЛА
-
- SHA256
-
shasum-a 256 ИМЯ ФАЙЛА
-
- SHA384
-
shasum-a 384 ИМЯ ФАЙЛА
-
- SHA512
-
shasum-a 512 FILENAME
-
Как мы подробно объясняли ранее, если значение контрольной суммы, вычисленное с помощью Терминала, отличается от значения на официальном веб-сайте или от того, которое вы загрузили в отдельном текстовом документе (Ubuntu делает это, например, ), значит загруженный вами файл был изменен или был поврежден в какой-то момент во время передачи.
Иногда при загрузке файлы могут быть повреждены, особенно если процесс загрузки был прерван. Хотя некоторые хосты поддерживают приостановку и возобновление загрузки, иногда это может привести к повреждению или повреждению файла, что неизбежно приведет к другой контрольной сумме. На всякий случай вы можете попробовать загрузить файл еще раз и посмотреть, не изменилась ли его контрольная сумма.
Конечно, также может случиться, что объект, опубликовавший файл, обновил его (например, опубликовал новую версию программы) и забыл опубликовать новую контрольную сумму, что заставило вас поверить в то, что содержимое было подделано. или он поврежден, хотя на самом деле это не так.
2. Использование сторонних приложений
Если вы не большой поклонник Терминала и/или просто не чувствуете себя комфортно, отдавая однострочные команды своему дорогому Mac, то, возможно, вам будет удобнее использовать Mac App Store, чтобы найти третий-party, которая также предлагает графический интерфейс и, как правило, не так запутана, как Терминал. Одно из таких приложений, которое нам удалось найти, называется просто Checksum Utility, и его можно купить в настоящее время всего за 1,99 доллара США.
После оплаты приложения просто скачайте и установите его на свое устройство через Mac App Store и запустите. Вы заметите, что он имеет довольно упрощенный интерфейс, и большая часть информации, которую вы можете найти в этих разделах, может сбивать с толку, но будьте терпимы. Цель приложения не в том, чтобы вносить какие-либо изменения в ваше устройство, а в том, чтобы информировать вас о целостности файлов на вашем носителе.
Согласно официальной странице продукта в Mac App Store, вы можете использовать Checksum Utility, чтобы проверить, работает ли ваш файл резервной копии, сравнив исходные документы с их резервными копиями, сравнить файлы с их старыми контрольными суммами, чтобы увидеть, не поврежден ли ваш жесткий диск, и сравните важные файлы с их дубликатами, чтобы проверить, не повреждена ли ваша оперативная память.
В отличие от терминала Mac, утилита Checksum поддерживает гораздо больше алгоритмов контрольной суммы, что дает вам достаточно места в том, что касается гибкости типа хэша. Поддерживаются следующие алгоритмы: CRC 32, MD5, SHA 1, MD2, MD4, SHA 2: SHA 224, SHA 256, SHA 384 и SHA 512. Кроме того, вы можете использовать приложение для сохранения вычисленной контрольной суммы как контрольной суммы. файл для дальнейшего использования или справки.
Вы можете сделать гораздо больше с помощью утилиты Checksum Utility, чем с помощью стандартных команд терминала, таких как сравнение файла.checksum, файла в вашем хранилище и значения контрольной суммы, которое вы вводите вручную, в любой комбинации. Если у вас уже есть контрольная сумма, но вы не знаете, с помощью какого алгоритма она была создана, утилита Checksum может помочь вам легко ее определить.
С другой стороны, утилита Checksum не может вычислять и сравнивать контрольные суммы всех файлов, содержащихся в папке, поэтому вы можете рассчитывать и сравнивать только отдельные контрольные суммы. Однако, если вам нужна возможность массового расчета и сравнения контрольных сумм, вы можете найти приложение Checksum Folders в Mac App Store.
Учитывая все обстоятельства, Checksum Utility не только проще в использовании и (возможно) менее запутанно, чем Mac Terminal, но также предлагает множество дополнительных функций, таких как сравнение контрольных сумм (по файлу, по файлу.checksum, и ручным вводом в любой комбинации), инструмент идентификации алгоритма и возможность сохранить вычисленную контрольную сумму в виде файла.checksum на вашем устройстве.
Linux
Если вы опытный пользователь Linux, вы, вероятно, уже знаете все о контрольных суммах, о том, как они работают и как рассчитать контрольную сумму самостоятельно. Однако, если вы только начинаете и недавно обнаружили, что Linux-это все о командах терминала, вам могут понадобиться следующие несколько разделов, чтобы узнать, как вы можете вычислять и сравнивать контрольные суммы на своем ПК с Linux, не беспокоясь и не увеличивая разочарован.
Как и следовало ожидать, Linux в значительной степени полагается на свой интерфейс командной строки (CLI), помогающий выполнять определенные задачи, и, хотя у него есть множество приложений на основе графического интерфейса, которые вы можете выбрать (либо встроенные инструменты, либо те, которые вы можете загрузить отдельно), вы обнаружите, что CLI просто лучше, а графический интерфейс довольно ограничен. Ради этого мы покажем вам, как вычислить контрольную сумму, используя как Терминал, так и сторонний инструмент.
Стоит отметить, что эти инструкции и сторонние инструменты были разработаны для работы в операционной системе Ubuntu. Хотя они могут работать в разных операционных системах Linux, велика вероятность, что это не так, поскольку разные ОС имеют разные наборы инструкций.
1. Терминал
Если вы настроены принять Linux в чистом виде, вам придется освоить Терминал, поскольку это один из самых мощных инструментов, с которыми вы когда-либо сталкивались в этой операционной системе. Некоторые даже говорят, что использование терминала Linux похоже на то, как если бы вы раньше играли в компьютерные игры и вызывали консоль, где вы могли вводить чит-коды, которые делали вас неуязвимыми и давали вам нечестивые силы. Они не ошиблись бы.
По правде говоря, если вы забудете о том, что Терминал позволяет делать практически все на вашем компьютере и не имеет такого количества отказоустойчивых устройств, как, скажем, Windows, которая не позволяет вам удалять важные файлы ОС или форматировать разделы, на которых установлена Windows, работать с этой консолью довольно просто. Как показывает практика, никогда не пытайтесь запускать команду Терминала, если вы не на 100% понимаете и признаете, что она будет делать.
Первое, что вам нужно усвоить, это то, что в Linux есть разные команды для каждого алгоритма контрольной суммы, но как только вы освоите их, их будет довольно легко запомнить и, осмелюсь сказать, интуитивно понятно. Мы перечислили каждую команду ниже, а также алгоритм, который она поддерживает, так что вы можете проверить их, прежде чем мы начнем должным образом.
- MD5 – md5sum -используется для вычисления контрольных сумм MD5
- SHA-1 – sha1sum -используется для вычисления контрольных сумм SHA-1.
- SHA-256 – sha256sum -используется для вычисления контрольных сумм SHA-256
- SHA-224 – sha224sum -используется для вычисления контрольных сумм SHA-224
- SHA-384 – sha384sum -используется для вычисления контрольных сумм SHA-384
- SHA-512 – sha512sum -используется для вычисления контрольных сумм SHA-512
Если вы уже знакомы с различными типами хэшей, которые может обрабатывать ваш терминал Linux, пора узнать, как рассчитать контрольную сумму для загруженного вами файла. Чтобы упростить задачу, вы можете загрузить IrfanView, поскольку он позволяет вам проверять официальную контрольную сумму прямо на официальной странице загрузки, под каждой гиперссылкой. Однако не стесняйтесь загружать любой файл, который вам нужен для этого руководства, если у вас также есть доступ к контрольной сумме исходного файла (а не той, которую вы, очевидно, рассчитываете).
Имея это в виду, вот что вам нужно сделать, чтобы вычислить контрольную сумму файла в Linux (Ubuntu) с помощью терминала:
- Нажмите клавишу Win на клавиатуре.
- Введите терминал
- Select the terminal from the list of results
- Use the CD command to navigate to the folder where you downloaded the file (cd Downloads usually does the trick)
- Type the following command to calculate the checksum of your file, but make sure to replace FILENAME with your actual file name (including its extension)
sha256sum FILENAME
- The command should look something like
sha256sum iview457_x64_setup.exe
- Note that if your file uses a different hashing algorithm, you can simply use any other of the commands we posted above
Pro tip: you can also use the file explorer (Files) to navigate to the directory where you downloaded your file, then use Shift + Right-click on any empty space inside that directory (not on any icon) and select Open in Terminal from the context menu. This will let you skip using the CD command to navigate to the appropriate directory.
After running the command, you should be able to see the hash displayed in your terminal window, just below your command. Now compare it against the hash of the original file (for example, the checksum displayed on the official download page of your file, or the one included in a text document along with the file you downloaded, if appliable).
If the hashes are identical, good for you, it means that the file hasn’t been tampered with and it hasn’t been corrupted or broken during transmission in any manner. However, if you see any differences, you may want to get rid of the file as soon as possible, as it could’ve been tampered with and might carry dangerous malware that could jeopardize your device’s security.
2. Using a third-party app
We get it, the terminal can be a bit scary, especially if you’ve been coddled by Windows’ intuitive menus and the fact that you can use it without ever opening CMD or PowerShell or even knowing that they’re there, for that matter. Fortunately, you can still calculate checksums without launching the terminal and typing each command manually into it by using third-party apps.
On the downside, these apps need to be installed somehow, and one of the best methods is to use the terminal, so we’re not exactly out of the clear just yet, but bear with us and we’ll teach you what to do and guide you through each step. A simple, yet powerful tool you could use to calculate checksums is GtkHash; it’s easy to install, easy to use, and supports a plethora of hash functions, so you know you won’t run out of options anytime soon.
As we’ve already mentioned above, the following instructions are written for Ubuntu, but they might work great on other Debian-based Linux distributions, as well. Furthermore, you will need Super User (administrator) rights in order to be able to run some of these commands (mostly installing the program on your computer), so make sure you have a Super User account that you know the password of before we proceed. If everything is peachy on your side, follow these steps to install GtkHash on your Ubuntu computer:
- Hit the Win key on your keyboard
- Type terminal
- Click the terminal icon in the list of results to launch an instance of the terminal
- Type the following command in the terminal:
sudo apt-get install gtkhash
- This will fetch the installation files from a repository and install them on your computer in no time
- Launch GtkHash after installing it by either locating its icon or typing GtkHash in the terminal
- Note that if you launch it through the terminal, you must leave the terminal window open, as closing it will also terminate GtkHash
Alright, so you’ve installed GtkHash, which is quite an important step in our process. If you also managed to launch it give yourself a high-five and let’s configure the algorithms we’re going to use.
- Go to GtkHash’s Edit menu
- Select Preferences from the combo menu
- Check the algorithms you’re going to use (by default MD5, SHA1, and SHA256 are selected)
Our recommendation is to leave only the default ones for now, and add more later if or when you’re going to need them. Here’s a complete list of all the hash functions supported by this app:
- MD2
- MD4
- MD5
- MD6-224
- MD6-256
- MD6-384
- MD6-512
- SHA1
- SHA224
- SHA256
- SHA384
- SHA512
- RIPEMD128
- RIPEMD160
- RIPEMD256
- RIPEMD320
- TIGER128
- TIGER160
- TIGER192
- WHIRLPOOL
- HAVAL 128-3
- HAVAL 160-3
- HAVAL 192-3
- HAVAL 224-3
- HAVAL 256-3
- GOST
- SNEFRU 128
- SNEFRU 256
- CRC32
- ADLER32
As you can see, there’s plenty of options you can choose from, and adding more algorithms to the program besides the ones that are enabled by default might only confuse you more and make the tool more difficult to work with. If we’re done here, let’s see exactly how you can use GtkHash to calculate the hash of any file you’ve saved on your PC.
- Launch GtkHash
- Click the file-shaped icon in the File field
- Navigate to the file you want to calculate the checksum for
- Double-click the file to load it to GtkHash
- Click the Hash button in the main window of GtkHash (lower-right corner)
- Check if the value of your hash is identical to the one on the website (or to the one in your separate file, whichever applies)
As we’ve said before, if the hashes are identical, then you’re good to go; the file you downloaded hasn’t suffered any modifications between the time it was posted and the moment when it reached your PC, and it’s not corrupted or broken either. If you notice that the hashes are different, we suggest you get rid of the file as soon as possible and try downloading it again to rule out any transmission issues such as interruptions or timeouts.
Note that the width of the main window of GtkHash is a bit reduced in size, which means that some hashes won’t be entirely visible. In order to see the whole hash (checksum), you can either resize the main window of the program or you can copy the checksum and paste it into a different app, such as a text editor. Remember, if you can’t seem to find the right algorithm in GtkHash, you can always pop open the Preferences window and enable more hash functions that you can work with.
Last, but not least, GtkHash is just an example of third-party apps you can work with. Feel free to explore and experiment with any other app, and you may find ones that offer a lot more features, support more algorithms, and are even easier to use (although GtkHash is quite straightforward).
Checksum – CONCLUSION
All things considered, if you’ve ever heard about checksums but didn’t read into the matter too much and now you’re just confused about what it means, what it’s used at and how does it work, we’ve got you covered. To put it shortly, a checksum is paramount to check the integrity of data, and it applies to a wide range of domains, including but not limited to emails, passwords, downloaded files, and even RAM/HDD troubleshooting.
Each operating system has its own particularities regarding calculating and comparing checksum, so you might want to check our instructions if you find it difficult to calculate a checksum on Linux, Mac, or Windows computers. On an ending note, if you notice any differences between your calculated checksum and the original one, you should always see it as a potential intrusion or corruption problem.