Как сравнить хеш суммы

Содержание

Вычисление и сравнение хэш-значений с помощью C # – C#

Как сравнить хеш суммы

  • 04/13/2020
  • Чтение занимает 3 мин
    • r
    • o

В этой статье описывается, как получить хэш-значение и как сравнить два значения хеша, чтобы убедиться, что они идентичны, с помощью Visual C#.

Исходная версия продукта:   Visual C #
Исходный номер статьи базы знаний:   307020

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

В этой статье рассматриваются следующие пространства имен библиотеки классов Microsoft .NET Framework:

  • System.Security.Cryptography
  • System.Text

System.Security.CryptographyКласс в .NET Framework позволяет легко вычислить хэш-значение для исходных данных.

Вычисление хэш-значения

Можно легко создать и сравнить хэш-значения с помощью криптографических ресурсов, которые входят в System.Security.Cryptography пространство имен. Так как все функции хеширования принимают входные данные типа Byte[] , возможно, потребуется преобразовать источник в массив байтов, прежде чем он будет хэширован. Чтобы создать хэш для строкового значения, выполните следующие действия:

  1. Откройте Visual Studio .NET или Visual Studio.

  2. Создать новое консольное приложение в Visual C# .NET или Visual C# создает для вас открытый класс вместе с пустым Main() методом.

    Примечание

    В Visual C#. NET, Class1.CS по умолчанию. В Visual C# Program.CS создается по умолчанию.

  3. Используйте using директиву в System System.Security.Cryptography System.Text пространствах имен, чтобы в коде не требовалось определять объявления из этих пространств имен позже. Эти операторы должны использоваться до других объявлений.

    using System;using System.Security.Cryptography;using System.Text;

  4. Объявите строковую переменную для хранения исходных данных и два байтовых массива (неопределенный размер) для хранения исходных байтов и результирующего хэш-значения.

    string sSourceData;byte[] tmpSource;byte[] tmpHash;

  5. Используйте GetBytes() метод, который является членом System.Text.ASCIIEncoding класса, для преобразования исходной строки в массив байтов (обязательный в качестве входных данных функции хеширования).

    sSourceData = “MySourceData”;//Create a byte array from source data.tmpSource = ASCIIEncoding.ASCII.GetBytes(sSourceData);

  6. Вычислите хеш MD5 для исходных данных, вызвав ComputeHash экземпляр MD5CryptoServiceProvider класса.

    Примечание

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

    //Compute hash source data.tmpHash = new MD5CryptoServiceProvider().ComputeHash(tmpSource);

  7. tmpHashМассив байтов теперь содержит вычисленное значение хэша (128-разрядное значение = 16 байт) для исходных данных. Часто полезно отображать или хранить значение, подобное приведенному ниже, в виде шестнадцатеричной строки, которая выполняет следующий код:

    Console.WriteLine(ByteArrayToString(tmpHash));static string ByteArrayToString(byte[] arrInput){ int i; StringBuilder sOutput = new StringBuilder(arrInput.Length); for (i=0;i < arrInput.Length; i++) { sOutput.Append(arrInput[i].ToString("X2")); } return sOutput.ToString();}

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

Сравнение двух значений хэша

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

В обоих случаях необходимо сравнить два вычисляемых хеш-значения, что очень просто, если они хранятся как шестнадцатеричные строки (как на последнем этапе приведенного выше раздела). Тем не менее, они могут быть представлены в виде массивов байтов.

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

  1. Сразу под созданием шестнадцатеричной строки создайте новое значение хэша на основе новых исходных данных.

    sSourceData = “NotMySourceData”;tmpSource = ASCIIEncoding.ASCII.GetBytes(sSourceData);byte[] tmpNewHash;tmpNewHash = new MD5CryptoServiceProvider().ComputeHash(tmpSource);

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

    bool bEqual = false;if (tmpNewHash.Length == tmpHash.Length){ int i=0; while ((i < tmpNewHash.Length) && (tmpNewHash[i] == tmpHash[i])) { i += 1; } if (i == tmpNewHash.Length) { bEqual = true; }} if (bEqual) Console.WriteLine("The two hash values are the same");else Console.WriteLine("The two hash values are not the same");Console.ReadLine();

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

Полный листинг кода

using System;using System.Security.Cryptography;using System.Text; namespace ComputeAHash_csharp{ /// /// Summary description for Class1.

/// class Class1 { static void Main(string[] args) { string sSourceData; byte[] tmpSource; byte[] tmpHash; sSourceData = “MySourceData”; //Create a byte array from source data tmpSource = ASCIIEncoding.ASCII.GetBytes(sSourceData); //Compute hash source data tmpHash = new MD5CryptoServiceProvider().

ComputeHash(tmpSource); Console.WriteLine(ByteArrayToString(tmpHash)); sSourceData = “NotMySourceData”; tmpSource = ASCIIEncoding.ASCII.GetBytes(sSourceData); byte[] tmpNewHash; tmpNewHash = new MD5CryptoServiceProvider().ComputeHash(tmpSource); bool bEqual = false; if (tmpNewHash.Length == tmpHash.

Length) { int i=0; while ((i < tmpNewHash.Length) && (tmpNewHash[i] == tmpHash[i])) { i += 1; } if (i == tmpNewHash.Length) { bEqual = true; } } if (bEqual) Console.WriteLine("The two hash values are the same"); else Console.WriteLine("The two hash values are not the same"); Console.

ReadLine(); } static string ByteArrayToString(byte[] arrInput) { int i; StringBuilder sOutput = new StringBuilder(arrInput.Length); for (i=0;i < arrInput.Length -1; i++) { sOutput.Append(arrInput[i].ToString("X2")); } return sOutput.ToString(); } }}

Ссылки

Дополнительные сведения о том, как использовать криптографические функции платформы .NET Framework, можно найти в разделе .NET.

Источник: https://docs.microsoft.com/ru-ru/troubleshoot/dotnet/csharp/compute-hash-values

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

Как сравнить хеш суммы

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

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

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

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

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

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

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

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

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

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

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

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

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

certutil -hashfile “путь к файлу” [HashAlgorithm]

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

certutil —hashfile “D:\Win10_1511_1_Russian_x32.iso” SHA1

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

Осталось сравнить его с оригинальным, для этого удобно вставить их рядом в блокноте.

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

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

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

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

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

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

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

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

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

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

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

md5sum “путь к файлу”

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

sha1sum “путь к файлу”

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

cksum “путь к файлу”

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

sudo apt-get install gtkhash

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

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

Когда нужный продукт будет найден, нажимаем на «Сведения» рядом с ним.

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

Источник: https://beginpc.ru/raznoe/checksum-file

Как узнать Хеш файла, как сравнить и зачем?

Как сравнить хеш суммы

Загрузка…

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

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

Зачем нужно знать Хеш- сумму файла?

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

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

Как только он убедился, что все отлично устанавливается и работает, он узнал «Хеш-Сумму» образа и указал её в описании к игре. У незнающих людей напрашивается вопрос, зачем он указала хеш -сумму образа?

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

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

И зачем мне его сравнить? Допустим, Вы скачали образ и естественно принялись за установку игры. Но в процессе установки начали появляться какие-то ошибки, что-то идёт не так. Все признаки того, что игра не установится, так как это нужно, либо установилась, но не запускается.

В общем, существую подобные проблемы…

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

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

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

Вот, отсюда все беды!

Идём на сайт, откуда качали файл, берём там хеш -сумму, после чего узнаём хеш скаченного файла и сравниваем их.

1) Если Хеш-Сумма оказывается разной, то соответственно загруженный файл 100% отличается от того, файла, который выложен на сайте. А это значит, загруженный файл работать не будет. Придётся скачать его заново.

2) Если Хеш-Суммы одинаковые, то в этом случаи была загружена точная копия файла, и она будет работать должным образом. Можно смело приступать к установке.

ВАЖНО! Если Вы качаете образы Windows то, после загрузки настоятельно рекомендую узнать хеш -сумму и сравнить её, если суммы не совпадут, то лучше раз 100 подумать, стоит ли ставить windowsс подобного образа.

Иначе можно получить немало проблем в момент установки системы.

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

Как узнать и сравнить Хеш-Сумму файла

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

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

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

1 – Эта кнопка откроет диалоговое окно для выбора файлы.2 – Эта кнопка нужна, если нужно удалить содержимое полей.3 – Эта кнопка откроет блог winkomp.ru.4 – Эта кнопка закроет программу.5 – Эта кнопка нужна, если Вам нужно скопировать Хеш-Сумму в буфер.

6 – Эта кнопка наоборот, вставить Хеш-Сумму, для сравнения.

Что бы сравнить хеш -суммы, нажимаем кнопку «1» и выбираем файл, который был скачан. Программа определит его хеш -сумму в кодировке md5, и он появится в поле «Полученный Хеш».

Теперь в поле «Сравнить с:» вставьте хеш -сумму указанную в описании к скачанному файлу. Нажмите кнопку «Сравнить» и программа покажет результат и появится такое окно:

— Хеш-Суммы равны:

— Хеш-Суммы не равны:

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

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

На самом деле программа работает и в скором времени она покажет хеш сумму файла. А зависает программа, так как нужно немного её доработать, а именно добавить «дополнительный поток». В общем, не обращайте внимания на то, что программа «Не отвечает» это мои погрешности, она все ровно работает!

Как меняется Хеш-Сумма файла? (Для понимания)

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

Создадим файл «test.txt» и запишем в него любую строку, например из трёх символов «123». Теперь сохраним файл и посмотрим его размер, он составит всего «3 байта».

Так как один символ весит всего  1 байт и не важно, что это, символ или пробел.

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

И так, сохраняем файл со строкой «123» и смотрим его Хеш-Сумму. У меня она получилась такого значения.

MD5: 202CB962AC59075B964B07152D234B70

MD5: 202CB962AC59075B964B07152D234B70

Хорошо! Сохраняем полученную «Хеш-Сумму» Куда-нибудь в другое место. Теперь снова открываем файл «test.txt» и дописываем к строке ещё один символ, и в итоге получится такая строка «1234». Сохраняем этот файл и снова узнаем его «Хеш-Сумму». Вот что получилось.

MD5: 81DC9BDB52D04DC20036DBD8313ED055

MD5: 81DC9BDB52D04DC20036DBD8313ED055

Тут без всяких программ видно, то, что «Хеш-суммы» совершенно разные. Как видим «Хеш» изменился. Это произошло из-за добавления ещё одного байта в файл.

Вот таким примером хорошо видно, как меняется хеш у файла.

Это все к тому, что, если Вы качаете образ «Windows» и в процессе загрузки произойдёт ошибка, вследствие которой потеряется хоть один байт, то у вас могут возникнуть проблемы при установке Windows.

Спасибо за внимание, на этом у меня все, всем добра и удачи!

Скачать программу.

Источник: https://winkomp.ru/kak-uznat-xesh-fajla-kak-sravnit-i-zachem

6 бесплатных хэш-чекеров для проверки целостности любого файла

Как сравнить хеш суммы

6 бесплатных хэш-чекеров для проверки целостности любого файла

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

1. Проверка хэша файлов с помощью PowerShell

Windows поставляется со встроенной функцией проверки хэшей файлов в PowerShell: SHA1, SHA256, SHA384, SHA512, MACTripleDES, MD5 и RIPEMD160.

Сначала нажмите клавишу Windows, а затем введите PowerShell. Выберите наиболее подходящий вариант, чтобы открыть PowerShell. Основной командой проверки будет:

get-filehash FILEPATH

Например, «get-filehash c:\test.txt» выдаст:

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

get-filehash -Algorithm [HASH TYPE] FILEPATH Например, «get-filehash -Алгоритм SHA384 c:\test.txt» выдаст:

Время, необходимое для создания хэша, зависит от размера файла и используемого вами алгоритма.

2. Hash Generator

SecurityExploded’s Hash Generator — это простой в использовании генератор хэшей, который поддерживает широкий спектр алгоритмов хэширования. Бесплатный инструмент для создания хэшей может генерировать хэши для MD5, SHAxxxx, Base64, LM, NTLM, CRC32, ROT13, RIPEMD, ALDER32, HAVAL и других.

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

3.  HashMyFiles для Windows (32-bit) | Windows (64-bit)

Nirsoft’s HashMyFiles — это удобный портативный генератор хэшей, который позволяет делать пакетную генерацию хэшей. HashMyFiles может отображать хэши для MD5, SHAxxxx и CRC32.

4. HashTab

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

По умолчанию HashTab генерирует хэши для MD5, CRC32 и SHA1. Настройки HashTab позволяют добавлять более 25 дополнительных хэшей, включая SHA, RIPEMD, TIGER и WHIRLPOOL.

5. QuickHash

QuickHash — это генератор хэшей с открытым исходным кодом для Windows, macOS и Linux. Это также одна из наиболее полнофункциональных систем создания хэшей и проверки их правильности в этом списке.

Хотя количество хэшей, которые вы можете использовать, небольшое, просто MD5, SHA1, SHA256, SHA512, и xxHash64, но Quick Hash имеет массу дополнительных функций.

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

Скачать: QuickHash для Windows | macOS | Linux (Debian)

6. MultiHasher

MultiHasher представляет пользователям широкий спектр инструментов для генерации и проверки хэшей в одном пакете. Позволяет создавать хэши MD5, SHA1, SHA256, SHA384, SHA512 или RIPEMD-160.

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

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

Спасибо, что читаете! Подписывайтесь на мои каналы в Telegram, Яндекс.Мессенджере и Яндекс.Дзен. Только там последние обновления блога и новости мира информационных технологий.

Также, читайте меня в социальных сетях: , , , OK.

Респект за пост! Спасибо за работу!

Хотите больше постов? Узнавать новости технологий? Читать обзоры на гаджеты? Для всего этого, а также для продвижения сайта, покупки нового дизайна и оплаты хостинга, мне необходима помощь от вас, преданные и благодарные читатели. Подробнее о донатах читайте на специальной странице.

Есть возможность стать патроном, чтобы ежемесячно поддерживать блог донатом, или воспользоваться Яндекс.Деньгами, WebMoney, QIWI или PayPal:

Заранее спасибо! Все собранные средства будут пущены на развитие сайта. Поддержка проекта является подарком владельцу сайта.

Источник: https://levashove.ru/6-free-hash-checkers-file-integrity/

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

Как сравнить хеш суммы

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Adler: 32205e048a CRC: 32ebe6c6e6 Haval: 5711dea10d85b988fcb1eed99ce7310c MD2: 8cca0e965edd0e223b744f9cedf8e141 MD4: 0abe9ee1f376caa1bcecad9042f16e73 MD5: 6cd3556deb0da54bca060b4c39479839 RipeMD128: 3cbb446fc20277b2a4e4b8b8b40aa962 RipeMD160: 58262d1dbe4530d8865d3518c6d6e41002610f Tiger: b5e5dd73a5894236937084131bb845189cdc5477579b9f36 SHA-1: 943a702d06f34599aee1f8da8ef9f7296031d699 SHA-256: 315f5bdb76d078c43b8ac0064e4a0164612b1fce77c869345bfc94c75894edd3 SHA-384: 55bc556b0d2fe0fce582ba5fe07baafff035653638c7ac0d5494c2a64c0bea1cc57331c7c12a45cdbca7f4c34a089eeb SHA-512: c1527cd893c124773d811911970c8fe6e857d6df5dc9226bd8a160614c0cd963a4ddea2b94bb7d36021ef9d865d5cea294a82dd49a0bb269f51f6e7a57f79421 Whirlpool: 238034e71c9f4d712ef02f8fe109bc1f32425530088c1ea13786e1ffdc953a7d567db4aba11ce0226efdd5ed5d55abd087b58122f891e61df996a37e595131b5

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

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

Если нужно проверить контрольную сумму какой-то строки (например, пароля), то проще всего воспользоваться онлайн сервисами. Найти такие онлайн сервисы можно в любом поисковике по запросу «hash online».

Для примера рассмотрим сайт http://www.sha1-online.com. На этом сайте есть строка, в которую нужно ввести исходные данные, и выпадающий список, где нужно выбрать какой алгоритм вы хотите использовать для получения хеш-суммы.

Чтобы проверить приведенную выше таблицу введем строку «Hello, world!», выберем алгоритм MD5 и нажмем на кнопку «hash».

В результате на экране появится строка со значением хеш-функции MD5.

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

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

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

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

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

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

Также HashTab позволяет сравнивать файлы. Для этого нужно нажать на кнопку «Сравнить файл» и выбрать другой файл.

Программа HashTab является бесплатной для личного пользования, некоммерческих организаций и студентов. Скачать программу можно на официальном сайте http://implbits.com/products/hashtab/.

Источник: https://comp-security.net/%D0%BA%D0%BE%D0%BD%D1%82%D1%80%D0%BE%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F-%D1%81%D1%83%D0%BC%D0%BC%D0%B0-%D1%84%D0%B0%D0%B9%D0%BB%D0%B0-%D1%87%D1%82%D0%BE-%D1%8D%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5/

HashTab для проверки контрольной суммы (хеша) файла

Как сравнить хеш суммы

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

Программа является расширением для Проводника Windows. HashTab позволит определить контрольную сумму (хеш или хэш) файла для проверки подлинности и целостности проверяемого  файла.

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

Для чего нужно проверять файлы на подлинность

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

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

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

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

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

Для проверки контрольной суммы (хэша) можно использовать бесплатную программу HashTab.

HashTab скачать

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

В контекстном меню выберите пункт «Свойства». После открытия окна, в окне «Свойства» вы увидите новую вкладку «Хеш-суммы файлов».

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

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

Для проверки файлов будет достаточно выбрать главные алгоритмы проверки: CRC32, MD5, SHA-1. После выбора алгоритмов проверки нажимаете на кнопку «OK».

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

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

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

Кликнув правой кнопкой мыши по соответствующей контрольной сумме, вы можете скопировать эту сумму или все контрольные суммы, а также перейти к настройкам программы, если выберете в контекстном меню соответствующий пункт.

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

Выводы статьи

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

https://vellisa.ru/hashtab-kontrolnyie-summyi-faylaHashTab для проверки контрольной суммы (хеша) файлаhttps://vellisa.ru/wp-content/uploads/2012/03/06.pnghttps://vellisa.ru/wp-content/uploads/2012/03/06.png2020-07-30T23:58:39+03:00ВасилийПрограммыКак узнать хеш файла в Windows поможет небольшая бесплатная программа HashTab, которая предназначена для проверки хеша, так называемую контрольную сумму файла. Программа является расширением для Проводника Windows. HashTab позволит определить контрольную сумму (хеш или хэш) файла для проверки подлинности и целостности проверяемого  файла. Для чего нужно проверять файлы на подлинность…ВасилийВасилий vas468@gmail.comAdministratorАвтор 700+ статей на сайте Vellisa.ru. Опытный пользователь ПК и ИнтернетИнтернет и программы для всех

Источник: https://vellisa.ru/hashtab-kontrolnyie-summyi-fayla

Поделиться:
Нет комментариев

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

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.