Контрольные суммы файла

контрольная сумма md5 не совпадает при обновлении xiaomi. В материале рассматривается что такое контрольные суммы файла, как рассчитать хеши и где посмотреть посмотреть хеш-суммы оригинальных образов Windows.

Контрольные суммы файла

Checksum file

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

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

Мы не будем углубляться в техническую реализацию, достаточно знать, что применяя определенный алгоритм высчитывает некое значение однозначно описывающее данный файл. Оно всегда одинаковое для одних и тех же данных и называется контрольной суммой или хешем. Хотя самих алгоритмов хеширования существует множество, вот некоторые из наиболее часто встречающихся: MD5, CRC32, SHA-1, SHA256, BTIH.

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

Проверка контрольных сумм файлов в Windows

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

Проверка хеша файла в командной строке Windows

Начнем с самого простого способа не требующего установки дополнительного программного обеспечения. Начиная с Windows 7 есть возможность рассчитать контрольную сумму в командной строке используя встроенную утилиту certutil среди прочего умеющую вычислять хеш файлов. Просто запускаете командную строку и вводите следующую команду:

где [HashAlgorithm] может принимать одно из следующих значений: MD2, MD4, MD5, SHA1, SHA256, SHA384, SHA512. Таким образом, чтобы узнать контрольную сумму файла Win10_1511_1_Russian_x32.iso расположенного в корне диска D:\ по алгоритму SHA-1 команда будет выглядеть так:

Утилита Certutil

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

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

Проверка хеша в программе MD5 File Checker

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

md5 file checker

Через некоторое время программа выдаст вердикт. Основной минус программы, что она умеет использовать только алгоритм MD5, что иногда бывает недостаточно. Скачать MD5 File Checker можно здесь.

Расчет контрольных сумм в программе HashTab

Здесь уже используется немного другой подход, причем есть версия как для Windows так и для Mac OS. В Windows программа является расширением проводника, а на Mac является плагином для Finder. Покажем работу программы на примере Windows.

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

Окно программы HashTab

Причем программа умеет вычислять хеш по множеству алгоритмов, а какой будет использоваться, можно выбрать, щелкнув «Настройки». Так же есть возможность указать оригинальную контрольную сумму, если хеши совпадут, то появится зеленая галочка. Скачать HashTab и узнать последние новости можно с сайта программы.

Представленных вариантов вполне достаточно, для проверки целостности файлов в Windows. Единственное пожалуй упомянем, что Total Commander так же умеет вычислять CRC-суммы, соответствующие возможности находятся в меню «Файл».

Проверка хешей в Linux

Здесь так же можно воспользоваться консолью. В случае алгоритма MD5 достаточно выполнив команду.

Для хеш-сумм по алгоритму SHA-1 команда выглядит немного иначе.

В случае необходимости рассчитать циклическую контрольную сумму (CRC) используется команда

Кто не хочет связываться с консолью, может поставить программу Gtkhash с графическим интерфейсом и проверять целостность файлов в ней. Для установки программы выполнить в консоли:

Напоследок расскажем о том, как можно убедиться, что скачанный с торрента или доставшейся из другого ненадежного источника дистрибутив Windows оригинальный и его не изменял кто-либо. Для этого идем на сайт Майкрософт где подписчики MSDN могут скачивать ее продукты. Находим нужный нам образ, обращая внимание на версию, дату, разрядность и язык. Когда нужный продукт будет найден, нажимаем на «Сведения» рядом с ним.

hash образ в msdn

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

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

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

В данной статье рассматривается то, как проверить контрольные числа MD5, SHA256 или SHA512/ SHA1 криптовалютного кошелька, программы, архива или любого другого файла.

Проверка контрольных значений MD5, SHA

В архивах программ, скачанных с интернета разработчики, как правило, вкладывают кроме исполнительных файлов (.exe) еще и. md5sum и. sha256sum-файлы (могут использоваться также ключи с другими цифрами, например, SHA512).

Пример контрольных сумм SHA-1, 256 и 512 для архива программы PhoenixMiner версии 4.5c:

File: PhoenixMiner_4.5c_Windows. zip
===================================
SHA-1: 2bea8b5d04734fd707ec59b3955e864712e66a91
SHA-256: 78300370043207516c8b8a48b20b7040b82203f9d311b6cc28890a934df74fae
SHA-512: 10e4e0ec5db2998fc54673f3b20f751845b6113869087e6e6cd3b3e6c464d00756bc16663414f80dd826d404e2ea71f4df5dc3c59073c97cc9bb7a73bb1d2786

Информация о контрольных суммах, как правило, содержится в архивах/страницах для скачивания файлов. Например, для PhoenixMiner в файловом хранилище mega содержится файл …_checksums. txt:

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

Хеши (контрольные суммы) вида SHA1, 256, 512 и MD5 нужны для того, чтобы обезопасить пользователей, скачавших исполняемые файлы из интернета. Они подтверждают целостность и безопасность файла, который предоставляется на ресурсе. Каждый скачивающий этот файл может проверить его целостность, сверив контрольные суммы с теми, которые закодированы в программе.

Это значительно увеличивает уровень безопасности и надежность работы.

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

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

Пример контрольной суммы SHA256 на странице загрузок официального сайта Monero:

В узловом программном обеспечении Bitcoin используются подписи релиза (release hashes). Это asc-файлы, которые обычно включают в себя информацию об SHA-256 хешах и подпись, зашифрованную PGP-ключом.

Скриншот сайта Bitcoin. org с ифнормацией о контрольных суммах Bitcoin Core:

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

Для того, чтобы проверить контрольную сумму файла (checksum) нужно скачать прилагаемый файл с информацией о ключах (или скопировать текстовую информацию с контрольной суммой на сайте разработчика).

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

Проверка контрольной суммы заключается в последовательном проведении следующих шагов:

  1. Открывается программа PowerShell входящий в состав Windows.

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

Это же окно в русскоязычной версии Windows:

  1. Затем нужно напечатать в консоли PowerShell команду “dir” (без кавычек) и нажать ввод. В результате этого на экране появится список файлов, содержащихся в директории.

Пример работы с программой PowerShell по проверке контрольной суммы исполняемого файла PhoenixMiner:

  1. Для проверки контрольной суммы MD5 нужно выделить и скопировать (нажав CTRL + C) название нужного файла (в данном случае PhoenixMiner. exe):

  1. Проверяют контрольную сумму файла.

Для проверки контрольной суммы MD5 вводят команду вида:

CertUtil — hashfile название файла MD5

Для проверки контрольной суммы SHA256 вводят команду вида:

CertUtil — hashfile название файла SHA256

В случае проверки Феникс майнера разработчик предоставляет только информацию о checksum zip-архива с программой и сопутствующими файлами:

Для проверки архива с расширением zip вводится команда вида:

CertUtil — hashfile PhoenixMiner_4.5c_Windows. zip SHA256

и нажимается ввод.

В результате успешной проверки контрольной суммы архива PhoenixMiner_4.5c_Windows. zip появится следующая информация:

Как видно, контрольная сумма 78300370043207516c8b8a48b20b7040b82203f9d311b6cc28890a934df74fae, полученная в результате проверки, совпадает с той, которая выложена разработчиком PhoenixMiner на сайте bitcointalk:

Для проверки сумм SHA512 или SHA1 вводятся соответственно команды:

CertUtil — hashfile PhoenixMiner. exe SHA512

CertUtil — hashfile PhoenixMiner. exe SHA1.

Заключение

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

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

Вам также может понравиться

Особенности майнинга на алгоритме Ethash

7 апреля, 2020

Как уменьшить стоимость транзакции в сети Bitcoin

8 января, 2021