Что такое хеш-сумма файла и как её замерять
Содержание:
- Что такое хеш-сумма файла
- Алгоритмы (стандарты) расчёта хеш-суммы файла
- Как проверить хеш в Windows 10
- ХЭШ СУММА
- Особенности программы HashTab:
- Зачем нужно знать Хеш- сумму файла?
- Сравнение хеша в любой операционной системе
- Как пользоваться HashTab
- Применение хеш-функций
- HashTab — программа для проверки контрольная сумма файла
- Зачем нужно знать Хеш- сумму файла?
- Что такое контрольная сумма
- Что такое хеш-функция?
- Как проверить работоспособность жесткого диска в Victoria
- Выполните свою контрольную сумму
- Зачем нужен Хэш?
Что такое хеш-сумма файла
Всё очень и очень просто с этим самым хешем — давайте возьмём два файла, с первого взгляда, совершенно одинаковых…
Допустим, что я их скачал с разных сайтов. У них, как видите, совершенно одинаковое название и расширение, но кроме этого сходства, у этих инсталляторов может быть схожий до последнего байта размер.
Обычные рядовые пользователи даже не догадываются, что подобные «экзешники» являются практически простыми архивами. Так вот, в этот файл (архив) очень легко подсунуть зловреда какого-нибудь (вирус) — они почти всегда маскируются под «правильный» файл, копируют не только название с расширением, но и размер даже.
Такой изменённый файл можно распространять в сети Интернет под видом официального, белого и пушистого. Кстати, идеального антивируса не существует и Ваш защитник может Вас подвести в любой момент, если не знали.
Алгоритмы (стандарты) расчёта хеш-суммы файла
Их довольно много существует на данный момент времени…
- Adler-32
- BTIH (BitTorrent Info Hash)
- CRC32
- eDonkey2000
- GOST (ГОСТ Р 34.11-94)
- MD5, MD4, MD2
- RIPEMD-128, RIPEMD-256, RIPEMD-320
- SHA-1
- SHA-2 (SHA-256, SHA-384, SHA-512)
- SHA-3 (SHA3-224, SHA3-256, SHA3-384, SHA3-512)
- TTH (Tiger Tree Hash)
- Tiger
- Whirlpool
- …
…но самыми распространёнными и популярными являются…
Рекомендую
- SHA-1
- MD5
- CRC
Хеш-суммы одного файла созданные по разным стандартам будут отличаться друг от друга очень заметно (не совместимы для сверки)…
• CRC: 02668A079
• SHA-1: F77EB9AA67CE63EDC87B77BF35DFEB9AA63E9B4C
• MD5: 00EF4D6A8122DDE85BDBC7ED3A1362
Как создавать (задавать) хеш-сумму файла мы сегодня с Вами обсуждать и учиться не будем — это тема следующей статьи будет.
Как проверить хеш в Windows 10
Любая настольная операционная система, будь то Windows 10, Linux или MacOS, имеет стандартные механизмы проверки хеш-сумм любых файлов на вашем диске.
Как узнать хеш в PowerShell
PowerShell выдаст вам хеш-сумму вашего файла. По умолчанию Windows генерирует хеш SHA-265, но вы можете указать, что вам нужен хеш другого алгоритма. Для этого используйте следующие команды:
- Get-FileHash F:\Test.txt -Algorithm MD5
- Get-FileHash F:\Test.txt -Algorithm SHA1
- Get-FileHash F:\Test.txt -Algorithm SHA256
- Get-FileHash F:\Test.txt -Algorithm SHA384
- Get-FileHash F:\Test.txt -Algorithm SHA512
- Get-FileHash F:\Test.txt -Algorithm MACTripleDES
- Get-FileHash F:\Test.txt -Algorithm RIPEMD160
Как проверить хеш-сумму через Командную строку
Множество действий, которые вы выполняете в PowerShell, можно сделать и в классической командной строке. Проверка хеша через Командную строку делается следующим образом.
По умолчанию Командная строка выводит на экран хеш-сумму SHA
1
, но вы можете изменить это, указав системе, какой именно хеш вы хотите получить. Для этого используйте следующие команды:
- certutil -hashfile F:\Test.txt MD5
- certutil -hashfile F:\Test.txt MD4
- certutil -hashfile F:\Test.txt MD2
- certutil -hashfile F:\Test.txt SHA512
- certutil -hashfile F:\Test.txt SHA384
- certutil -hashfile F:\Test.txt SHA256
- certutil -hashfile F:\Test.txt SHA1
Как проверить хеш через HasTab
HashTab – это отличная небольшая утилита, которая упростит проверку хеш-сумм. Вам не надо будет каждый раз вводить сложные команды для проверки. Достаточно будет только зайти в свойства файла, где уже будут собраны все суммы.
Кроме того, HashTab позволяет легко сравнить хеш-суммы двух файлов. Для этого по первому файлу кликните правой кнопкой мыши, выберите Свойства
, а затем откройте вкладку Хеш-суммы файлов
. Нажмите Сравнить файл
и укажите путь к второму файлу.
Хеш-сумма второго файла отобразится в поле Сравнение хеша
, и, если суммы совпадают, возле иконки решетки будет зеленая галочка. Если не совпадают – красный крестик.
ие расчитанное по набору входных данных с помощью специального алгоритма. Контрольная сумма чаще всего используется для проверки целосности файлов. То есть в грубом приблежении контрольная сумма это ключ
, который позволяет однозначно отличить два разных набора данных (два разных файла). Например, вы скачали файл из интернета ( игры, установочный ), вы можете быть уверенны, что в процессе скачивания файл не был поврежден и был полностью загружен? А ведь использование такого «неисправного» файла зачастую приводит к ошибкам при установке игры или ОС или чего угодно. Причем о том, что ошибка возникла именно из-за поврежденного в процессе загрузки файла вы можете и не знать, обвиняя во всех проблемах свой компьютер.
Так вот, что бы избежать таких проблем и используются контрольные суммы. Часто многие ресурсы вместе со сылкой на файл оставляют и контрольную сумму этого файла. И вы, скачав этот файл, сможете сравнить контрольную сумму скачанного файла с той, которая была оставлена на ресурсе и однозначно удостовериться в том, что файл был скачан без ошибок.
Для вычисления и сравнения контрольных сумм используются специальные программы. Самая распространенная из них это HashTab
. Эта программа бесплатная. Скачать ее можно отсюда:
Для установки распакуйте архив и запустите файл установки программы.
После установки не появляется ярлык программы, нету этой программы и в меню быстрого запуска Пуск. Для того чтобы воспользоваться программой, нажмите правой кнопкой
по любому файлу и выберите пункт Свойства
(проделаем эту операцию со скачанным архивом)
Обратите внимание, что в окне свойств файла появилась новая вкладка Хеш-суммы файлов
Для того чтобы сравнить контрольные суммы файлов скопируйте хеш-сумму, с сайта программы и вставьте ее в поле Сравнение хеша
окна свойств.
У каждого файла имеется свое собственное уникальное значение, которое может быть использовано для проверки файла. Это значение носит название хэш или контрольная сумма. Оно зачастую используется разработчиками программного обеспечения при обращении к файлам. По контрольной сумму проходит сверка файла с целью выявить его целостность и совпадение с заданным идентификатором.
Есть несколько алгоритмов вычислений контрольной суммы файла, среди которых наиболее известны и распространены MD5, SHA256, SHA1, SHA384. Вычислить хэш файла, то есть его контрольную сумму, можно как стандартными инструментами Windows, так и сторонними сервисами. В рамках данной статьи рассмотрим, как это сделать.
ХЭШ СУММА
Отвечу, есть такая маленькая и при этом бесплатная программка под названием HashTab, которая интегрируется в Проводник Windows и поможет легко определить хеш-сумму (контрольную сумму) скачанного вами файла с целью проверки его подлинности и целостности. Программу можно скачать с официального сайта по адресу:
Http://implbits.com/products/hashtab/HashTab_v6.0.0.34_Setup.exe
где после перехода на сайт нужно кликнуть по кнопке “Download Now!”.
В появившемся поле вводим свой адрес электронной почты, на который придёт письмо с ссылкой на скачивание программы, и нажимаем кнопку “Send Download Link”.
Проверяем почту и видим письмо, в котором предоставляется URL адрес по которому мы можем скачать программу, размер программы и её контрольную сумму.
Скачиваем программу, указав при этом папку.
Извлекаем установщик программы из архива и запускаем его двойным нажатием левой кнопки мыши. В открывшемся окне установщика кликаем по кнопке “Next”.
В следующем окне соглашаемся с лицензией, кликнув на кнопку “I Agree”.
Выбираем папку для установки программы (лучше оставить по умолчанию) и нажимаем кнопку “Install”.
Завершаем установку нажатием кнопки “Finish”.
КОНТРОЛЬНАЯ СУММА
По завершению установки программа интегрируется в контекстное меню Проводника операционной системы. Для отображения контрольной суммы какого нибудь файла, нам нужно кликнуть по нему правой кнопкой мышки и нажать на “Свойства”.
В открывшемся окне нажимаем на вкладку “Хеш-суммы файлов”.
Для больших файлов бывает нужно подождать несколько секунд для Хода вычисления хеша.
По завершению подсчёта, в окне “Значение хеша” мы увидим контрольную сумму для файла.
В “Настройках” программы можно добавить отображаемые дополнительные хэш-суммы и произвести более детальную её настройку (я оставляю по умолчанию).
Открываю этот файл и ищу контрольную сумму для моего образа диска (это ubuntu-12.10-desktop-i386.iso).
Копирую её с сайта.
Вставляю её в поле “Сравнение хеша” во вкладке “Хэш сумма файлов” моего образа диска и вижу зелёную галочку, говорящую о том, что контрольная сумма файла полностью совпадает с контрольной суммой образа диска на официальном сайте.
Проверить хеш-сумму 2 файлов можно ещё одним способом, нажав на кнопку “Сравнить файл”, выбрав в Проводнике нужный нам файл и кликнув на кнопку “Открыть”, и смотрим на полученный результат.
Таким вот способом стараемся обезопасить себя от использования модифицированных версий файлов.
Вы не когда не задумывались, зачем указывают такую информацию, как «Хеш-сумма»? Очень часто можно встретить на торрентах. С одной стороны, какая-то не понятная информация, но с другой стороны, очень полезная. Почему? Постараюсь подробно рассказать, как узнать хеш файла, как его сравнить и почему это так полезно.
Давайте разберемся, как узнать хеш файла и в каких случаях этот самый хеш будет крайне полезен для нас. Не буду сильно углубляться в тему, расскажу на примере простым языком, что бы было понятно каждому!
Особенности программы HashTab:
- компактные размеры программы;
- интеграция в контекстное меню;
- множество разновидностей хеш-сумм;
- сравнение сумм двух разных файлов;
- возможность копирования полученных данных.
После всех приведённых возможностей и преимуществ приложения HashTab уже никто не спросит о том, что же это за программа. Ведь для тех, кто хоть раз в жизни интересовался применением подобных контрольных сумм и использовал это на практике, HashTab будет незаменимым и надёжным инструментом, который всегда будет под рукой, как в прямом, так и в переносном смысле.
Довольно часто пользователю бывает необходимо найти поврежденные файлы на компьютере. Для того чтобы найти эти файлы существует множество программ и одна из них Hashtab. Она представляет собой расширение проводника Windows и плагин для Mac Finder. Использование этой программы позволяет пользователю забыть про проблемы с установкой некоторых файлов и образов. Hashtab находит все недостающие фрагменты файлов и сообщает об этом пользователю, а также защищает компьютер от вредоносного программного обеспечения и вирусов.
Зачем нужно знать Хеш- сумму файла?
Допустим, Вы решили скачать с торрента образ какой-то игры и весело провести время. Вот Вы нашли интересную игру, прочитали описание и обнаружили, что в описании к файлу указана «Хеш-Сумма» образа.
Дело в том, что человек, который выложил игру, он сначала проверял её на работоспособность на своём компьютере, может даже и на нескольких ПК и на разных системах.
Как только он убедился, что все отлично устанавливается и работает, он узнал «Хеш-Сумму» образа и указал её в описании к игре. У незнающих людей напрашивается вопрос, зачем он указала хеш -сумму образа?
Если говорить грубо, то: Хеш-сумма – это уникальный «Ключ» файла, который можно использовать для проверки файла, то есть, его целостности.
Если сказать ещё проще: То, хеш позволит нам сравнить два файла, тот файл, который был выложен для загрузки, с тем файлом, который был загружен на наш компьютер.
И зачем мне его сравнить? Допустим, Вы скачали образ и естественно принялись за установку игры. Но в процессе установки начали появляться какие-то ошибки, что-то идёт не так. Все признаки того, что игра не установится, так как это нужно, либо установилась, но не запускается.
В общем, существую подобные проблемы…
Конечно, можно обвинить во всех бедах то место, откуда качали файл. Мол, файл не качественный выложили, не чего не запускается, не чего не работает.
Но это может быть не так. С системой все в порядке и с источником, откуда качался файл то же все в порядке.
Все на самом деле куда проще чем, кажется. В процессе загрузки файла, могли произойти какие-то ошибки, либо файл не докачался до конца, в общем одним словом, файл загрузился на компьютер не полноценным по каким-то причинам.
Вот, отсюда все беды!
Идём на сайт, откуда качали файл, берём там хеш -сумму, после чего узнаём хеш скаченного файла и сравниваем их.
1) Если Хеш-Сумма оказывается разной, то соответственно загруженный файл 100% отличается от того, файла, который выложен на сайте. А это значит, загруженный файл работать не будет. Придётся скачать его заново.
2) Если Хеш-Суммы одинаковые, то в этом случаи была загружена точная копия файла, и она будет работать должным образом. Можно смело приступать к установке.
ВАЖНО! Если Вы качаете образы Windows то, после загрузки настоятельно рекомендую узнать хеш -сумму и сравнить её, если суммы не совпадут, то лучше раз 100 подумать, стоит ли ставить windowsс подобного образа. В общем и целом, думаю все понятно, если есть вопросы, то смело задавайте! Хорошо, разобрались, зачем нам нужна хеш -сумма файла, который собираемся качать
Теперь давайте узнаем, как сравнить хеш -сумму, что бы выяснить, полностью загрузился файл или нет
В общем и целом, думаю все понятно, если есть вопросы, то смело задавайте! Хорошо, разобрались, зачем нам нужна хеш -сумма файла, который собираемся качать. Теперь давайте узнаем, как сравнить хеш -сумму, что бы выяснить, полностью загрузился файл или нет.
Сравнение хеша в любой операционной системе
Имея это в виду, давайте посмотрим, как проверить хеш файла, который вы загрузили, и сравнить его с тем, который должен быть. Вот методы для Windows, macOS и Linux. Хеши всегда будут идентичны, если вы используете одну и ту же функцию хеширования в одном файле. Не имеет значения, какую операционную систему Вы используете.
Хэш файла в Windows
Этот процесс возможен без какого-либо стороннего программного обеспечения на Windows, благодаря PowerShell.
Чтобы начать работу, откройте окно PowerShell, запустив ярлык Windows PowerShell из меню Пуск.
Выполните следующую команду, заменив «C:\path\to\file.iso» путём к любому файлу, для которого вы хотите просмотреть хеш:
Для создания хеша файла потребуется некоторое время, в зависимости от размера файла, используемого алгоритма и скорости диска, на котором находится файл.
По умолчанию команда покажет хеш SHA-256 для файла. Однако, можно указать алгоритм хеширования, который необходимо использовать, если вам нужен хэш MD5, SHA-1 или другой тип.
Выполните одну из следующих команд, чтобы задать другой алгоритм хэширования:
Сравните результат хеш-функций с ожидаемым результатом. Если это то же значение, файл не был поврежден, подделан или иным образом изменен от исходного.
Хэш файла на macOS
macOS содержит команды для просмотра различных типов хэшей. Для доступа к ним запустите окно терминала. Вы найдете его в Finder → Приложения → Утилиты → Терминал.
Команда md5 показывает MD5-хеш файла:
Команда shasum показывает хеша SHA-1 по умолчанию. Это означает, что следующие команды идентичны:
Чтобы отобразить хеш файла SHA-256, выполните следующую команду:
Хэш файла в Linux
В Linux обратитесь к терминалу и выполните одну из следующих команд для просмотра хеша файла, в зависимости от типа хеша, который вы хотите посмотреть:
Как пользоваться HashTab
При установке программа HashTab интегрируется в окно свойств Проводника. После установки программы HashTab на ваш компьютер, вы можете проверять хэш-суммы файлов. Для этого кликните по какому-нибудь файлу правой кнопкой мыши.
В контекстном меню выберите пункт «Свойства». После открытия окна, в окне «Свойства» вы увидите новую вкладку «Хеш-суммы файлов».
При нажатии на вкладку «Хеш-суммы файлов» появляется окно со значениями контрольных сумм этого файла.
После нажатия на ссылку «Настройки», откроется окно настроек программы HashTab, где во кладке «Отображаемые хеш-суммы» можно выбрать соответствующие пункты алгоритмов проверки.
Для проверки файлов будет достаточно выбрать главные алгоритмы проверки: CRC32, MD5, SHA-1. После выбора алгоритмов проверки нажимаете на кнопку «OK».
Для сравнения хеш-сумм файлов нужно будет перетянуть файл в поле «Сравнение хеша». Если значения хэша файлов совпадают, то появится зеленый флажок.
Также можно проверить хеш другим способом. Для этого, нажимаете на кнопку «Сравнить файл…», а затем выбираете в окне Проводника файл для сравнения.
После этого нажимаете на кнопку «Открыть», а потом в открывшемся окне, вы увидите полученный результат сравнения контрольной суммы файла.
Вам также может быть интересно:
- HDD Scanner — как узнать размер папок и файлов
- WinDirStat для анализа и очистки дискового пространства
Кликнув правой кнопкой мыши по соответствующей контрольной сумме, вы можете скопировать эту сумму или все контрольные суммы, а также перейти к настройкам программы, если выберете в контекстном меню соответствующий пункт.
Можно также одновременно проверить два файла поодиночке и сравнить результат в двух окнах. На этом изображении видно, что контрольные суммы двух файлов совпадают.
Применение хеш-функций
Рассмотрим несколько достаточно простых примеров применения хеш-функций:
• Проверка целостности сообщений и файловСравнивая хеш-значения сообщений, вычисленные до и после передачи, можно определить, были ли внесены какие-либо изменения в сообщение или файл.
• Верификация пароляПроверка пароля обычно использует криптографические хеши. Хранение всех паролей пользователей в виде открытого текста может привести к массовому нарушению безопасности, если файл паролей будет скомпрометирован. Одним из способов уменьшения этой опасности является хранение в базе данных не самих паролей, а их хешей. При выполнении хеширования исходные пароли не могут быть восстановлены из сохраненных хеш-значений, поэтому если вы забыли свой пароль вам предложат сбросить его и придумать новый.
• Цифровая подписьПодписываемые документы имеют различный объем, поэтому зачастую в схемах ЭП подпись ставится не на сам документ, а на его хеш. Вычисление хеша позволяет выявить малейшие изменения в документе при проверке подписи. Хеширование не входит в состав алгоритма ЭП, поэтому в схеме может быть применена любая надежная хеш-функция.
Предлагаю также рассмотреть следующий бытовой пример:
Алиса ставит перед Бобом сложную математическую задачу и утверждает, что она ее решила. Боб хотел бы попробовать решить задачу сам, но все же хотел бы быть уверенным, что Алиса не блефует. Поэтому Алиса записывает свое решение, вычисляет его хеш и сообщает Бобу (сохраняя решение в секрете). Затем, когда Боб сам придумает решение, Алиса может доказать, что она получила решение раньше Боба. Для этого ей нужно попросить Боба хешировать его решение и проверить, соответствует ли оно хеш-значению, которое она предоставила ему раньше.
Теперь давайте поговорим о SHA-3.
HashTab — программа для проверки контрольная сумма файла
Эта простенькая программа встраивается в систему и позволяет воспользоваться проверкой контрольных сумм в любой удобный момент.
Скачать данную утилиту можно на сайте разработчиков: hashtab.ru На этом ресурсе, нажимаем на ссылку «Скачать для Winodws» и сохраняем файл установки на свой компьютер.
После этого, в контекстном меню любого файла, можно выбрать свойства и найти раздел с хеш-суммами. По умолчанию, там будут три основных типа сумм, которые мы упоминали выше.
Например, так выглядят контрольные суммы для файла Microsoft Office Word, с расширением docx.
Чтобы проверять эти суммы на соответствие, ниже находятся специальное поле. В него необходимо вставить оригинальный хеш и нажать на кнопку «Сравнить файл».
Если файл соответствует введенной контрольной сумме, то рядом с полем должна появиться зеленая галочка. Если файл не совпадает по контрольным суммам, то появится красный крестик.
В случае несовпадения хеша, нужно заново скачать данный файл и повторить эту проверку. На этой же вкладке можно настроить вычисление контрольной суммы. Нажмите на ссылку «Настройки».
Откроется окошко, в котором можно выбрать, из списка, какие типы хеша будут отображаться в основном окне свойств и использоваться для проверки соответствия файлов. Здесь же можно включить отображение хеш-сумм строчными символами.
Зачем нужно знать Хеш- сумму файла?
Допустим, Вы решили скачать с торрента образ какой-то игры и весело провести время. Вот Вы нашли интересную игру, прочитали описание и обнаружили, что в описании к файлу указана «Хеш-Сумма» образа.
Дело в том, что человек, который выложил игру, он сначала проверял её на работоспособность на своём компьютере, может даже и на нескольких ПК и на разных системах.
Как только он убедился, что все отлично устанавливается и работает, он узнал «Хеш-Сумму» образа и указал её в описании к игре. У незнающих людей напрашивается вопрос, зачем он указала хеш -сумму образа?
Если говорить грубо, то: Хеш-сумма – это уникальный «Ключ» файла, который можно использовать для проверки файла, то есть, его целостности.
Если сказать ещё проще: То, хеш позволит нам сравнить два файла, тот файл, который был выложен для загрузки, с тем файлом, который был загружен на наш компьютер.
И зачем мне его сравнить? Допустим, Вы скачали образ и естественно принялись за установку игры. Но в процессе установки начали появляться какие-то ошибки, что-то идёт не так. Все признаки того, что игра не установится, так как это нужно, либо установилась, но не запускается.
В общем, существую подобные проблемы…
Конечно, можно обвинить во всех бедах то место, откуда качали файл. Мол, файл не качественный выложили, не чего не запускается, не чего не работает.
Но это может быть не так.
С системой все в порядке и с источником, откуда качался файл то же все в порядке.
Все на самом деле куда проще чем, кажется. В процессе загрузки файла, могли произойти какие-то ошибки, либо файл не докачался до конца, в общем одним словом, файл загрузился на компьютер не полноценным по каким-то причинам.
Вот, отсюда все беды!
Идём на сайт, откуда качали файл, берём там хеш -сумму, после чего узнаём хеш скаченного файла и сравниваем их.
1) Если Хеш-Сумма оказывается разной, то соответственно загруженный файл 100% отличается от того, файла, который выложен на сайте. А это значит, загруженный файл работать не будет. Придётся скачать его заново.
2) Если Хеш-Суммы одинаковые, то в этом случаи была загружена точная копия файла, и она будет работать должным образом. Можно смело приступать к установке.
ВАЖНО! Если Вы качаете образы Windows то, после загрузки настоятельно рекомендую узнать хеш -сумму и сравнить её, если суммы не совпадут, то лучше раз 100 подумать, стоит ли ставить windowsс подобного образа. В общем и целом, думаю все понятно, если есть вопросы, то смело задавайте! Хорошо, разобрались, зачем нам нужна хеш -сумма файла, который собираемся качать
Теперь давайте узнаем, как сравнить хеш -сумму, что бы выяснить, полностью загрузился файл или нет
В общем и целом, думаю все понятно, если есть вопросы, то смело задавайте! Хорошо, разобрались, зачем нам нужна хеш -сумма файла, который собираемся качать. Теперь давайте узнаем, как сравнить хеш -сумму, что бы выяснить, полностью загрузился файл или нет.
Что такое контрольная сумма
Контрольная сумма или хеш-сумма – это значение, которое было рассчитано по некоторому алгоритму на основе имеющихся файлов или данных. Особенностью контрольной суммы является то, что ее алгоритм, при одинаковых входных данных всегда выдает одинаковое значение. При этом малейшее изменение входных данных кардинально меняет значение контрольной суммы.
Эта особенность позволяет использовать контрольную сумму для проверки целостности файлов или данных. Например, вам нужно отправить какой-то файл, и вы хотите убедиться, что он не будет поврежден или изменен на своем пути к получателю. Для решения этой задачи можно использовать контрольную сумму.
Высчитываете контрольную сумму и отправляете ее вместе с файлом. После чего получатель файла повторно высчитывает контрольную сумму файла и сравнивает ее с вашей контрольной суммой. Если значения совпадают, значит файл оригинальный, если нет, значит он получил какие-то изменения.
Также нужно упомянуть, что контрольную сумму нельзя использовать для получения исходных данных. То есть нельзя «расшифровать» хеш-сумму и получить данные которые были хешированы, хеш-сумму можно только сравнить с другой хеш-суммой. Это особенность открывает дополнительные возможности.
Например, хеш-суммы используются для хранения паролей. Когда вы регистрируетесь на каком-то сайте и вводите свой пароль, то он не хранится на сервере в открытом виде. Вместо этого хранится только его контрольная сумма. А когда вы входите в свой аккаунт с использованием пароля, система получается ваш пароль, высчитывает его хеш-сумму и сравнивает с хеш-суммой, которая хранится на сервере.
Для высчитывания контрольной суммы существует множество различных алгоритмов или так называемых хеш-функций. Самыми известными и популярными алгоритмы являются: CRC32, MD5, SHA-1 и SHA-2. Но, есть и множество других алгоритмов, некоторые из которых имеют широкое применения, а некоторые используются только для специфических задач.
При этом часть существующих алгоритмов признаны устаревшими или уязвимыми и больше не используются. Так, алгоритм MD5 практически полностью перестал использоваться поскольку выяснилось, что он может выдавать одинаковые значения для разных входных значений.
Для примера продемонстрируем, как выглядит контрольная сумма на практике. Например, возьмем строку «Hello, world!» и высчитаем ее контрольную сумму с использованием нескольких популярных алгоритмов.
Adler: 32205e048a CRC: 32ebe6c6e6 Haval: 5711dea10d85b988fcb1eed99ce7310c MD2: 8cca0e965edd0e223b744f9cedf8e141 MD4: 0abe9ee1f376caa1bcecad9042f16e73 MD5: 6cd3556deb0da54bca060b4c39479839 RipeMD128: 3cbb446fc20277b2a4e4b8b8b40aa962 RipeMD160: 58262d1fbdbe4530d8865d3518c6d6e41002610f Tiger: b5e5dd73a5894236937084131bb845189cdc5477579b9f36 SHA-1: 943a702d06f34599aee1f8da8ef9f7296031d699 SHA-256: 315f5bdb76d078c43b8ac0064e4a0164612b1fce77c869345bfc94c75894edd3 SHA-384: 55bc556b0d2fe0fce582ba5fe07baafff035653638c7ac0d5494c2a64c0bea1cc57331c7c12a45cdbca7f4c34a089eeb SHA-512: c1527cd893c124773d811911970c8fe6e857d6df5dc9226bd8a160614c0cd963a4ddea2b94bb7d36021ef9d865d5cea294a82dd49a0bb269f51f6e7a57f79421 Whirlpool: 238034e71c9f4d712ef02f8fe109bc1f32425530088c1ea13786e1ffdc953a7d567db4aba11ce0226efdd5ed5d55abd087b58122f891e61df996a37e595131b5
Как видно, каждый алгоритм выдает значение, которое не имеет совершенно ничего общего с исходными данными. И сколько раз мы бы не высчитывали контрольную сумму строки «Hello, world!», мы каждый раз будем получать одни и те же значения.
Что такое хеш-функция?
В настоящее время информационная безопасность стала неотъемлемой частью любых цифровых операций. Ключевой роль в защите информации играет понятие криптографической функции. Криптографические хеш-функции — это выделенный класс хеш-функций, который имеет определённые свойства, делающие его пригодным для использования в криптографии.
Преобразование, производимое хеш-функцией, называется хешированием. Исходные данные называются входным массивом, «ключом» или «сообщением». Результат преобразования (выходные данные) называется «хешем», «хеш-кодом», «хеш-суммой».
Иными словами, хеш-функция — это вычислительный метод, который может отображать неопределенный размер данных в фиксированный размер данных. Или, проще говоря, преобразование выводит числовое значение, которое характеризуется входными данными. Криптографическая хэш-функция использует необратимые (односторонние) математические функции, чтобы сгенерировать хеш-значение из входных данных. Одним из распространенных способов генерации криптографических хешей является использование блочных шифров.
К надежным с точки зрения криптографии хеш-функциям должны быть предъявлены следующие основные требования:
-
Хеш-функция должна представлять из себя одностороннюю функцию т.е. по образу (хешу) невозможно или почти невозможно найти исходный прообраз (сообщение).
-
Функция хеширования должна быть устойчива к коллизиям. Коллизия – это пара исходных сообщений, имеющая одинаковое выходное значение. Считается, что относительно быстрое нахождение коллизии в алгоритме хеширования делает подобный алгоритм ненадёжным с точки зрения криптоанализа.
Перейдем к подробному рассмотрению одного из самых безопасных и эффективных алгоритмов хеширования на сегодняшний день.
Как проверить работоспособность жесткого диска в Victoria
Victoria — пожалуй, одна из самых популярных программ для целей диагностики жесткого диска. С помощью нее вы можете просмотреть информацию S.M.A.R.T. (в том числе для SSD) проверить HDD на ошибки и сбойные сектора, а также пометить бэд блоки как не работающие или попытаться восстановить их.
Программу можно скачать в двух вариантах — Victoria 4.66 beta для Windows (и другие версии для ОС Windows, но 4.66b — самая последняя, обновление этого года) и Victoria для DOS, в том числе ISO для создания загрузочного накопителя. Официальная страница для загрузки — http://hdd.by/victoria.html.
Инструкция по использованию Victoria займет не одну страницу, а потому не берусь ее писать сейчас. Скажу лишь, что главный элемент программы в версии для Windows — это вкладка Tests. Запустив тестирование, предварительно выбрав жесткий диск на первой вкладке, вы сможете получить наглядное представление о том, в каком состоянии находятся сектора жесткого диска. Отмечу, что зеленые и оранжевые прямоугольники с временем доступа 200-600 мс — это уже плохо и означает, что сектора выходят из строя (проверить таким образом можно только HDD, для SSD такого рода проверка не подходит).
Здесь же, на странице тестирования, вы можете поставить отметку «Remap», для того, чтобы во время теста сбойные сектора были помечены как неработающие.
И, наконец, что делать, если на жестком диске обнаружены поврежденные сектора или бэд блоки? Я считаю, что оптимальное решение — позаботиться о сохранности данных и в кратчайшие сроки заменить такой жесткий диск на работоспособный. Как правило, любое «исправление бэд-блоков» носит временный характер и деградация накопителя прогрессирует.
- среди рекомендованных программ для проверки жесткого диска нередко можно встретить Drive Fitness Test for Windows (DFT). У нее есть некоторые ограничения (например, не работает с чипсетами Intel), но отзывы о работоспособности исключительно положительные. Возможно, пригодится.
- Информация SMART не всегда корректно считывается для некоторых марок накопителей сторонними программами. Если вы увидели «красные» пункты в отчете, это не всегда говорит о проблема. Попробуйте использовать фирменную программу от производителя.
Выполните свою контрольную сумму
Все основные операционные системы также имеют встроенный инструмент контрольной суммы.
Windows
Чтобы запустить контрольную сумму в Windows, проще всего использовать PowerShell: щелкните правой кнопкой мыши кнопку меню «Пуск» или нажмите Win + X. Если вы используете более старую версию Windows, вы можете скачать PowerShell отсюда.
Введите команду get-filehash, а затем укажите местоположение файла. Либо введите команду, а затем перетащите файл в окно PowerShell. Вот как был создан наш первый тестовый файл.
По умолчанию PowerShell использует SHA-256 для получения контрольной суммы, но вы можете использовать другие, например SHA-512 или MD5. Все они создадут другой хэш, но он все равно будет уникальным для этого файла. Чтобы использовать другую функцию, добавьте команду -algorithm, а затем ее код.
Для контрольных сумм использование другой хеш-функции не приносит каких-либо значительных преимуществ, хотя было показано, что некоторые из более старых (например, MD5, SHA-1) создают одинаковый хеш для разных файлов — проблема, известная как коллизия.. Новые алгоритмы более устойчивы к конфликтам, поэтому PowerShell по умолчанию использует SHA-256.
Основная причина необходимости переключения на другую функцию заключается в том, что хост файла решил использовать что-то другое, кроме SHA-256, поэтому вам нужно переключиться на это, чтобы сравнить файлы.
Сравнивать две длинные строки цифр и букв может быть немного сложно, но с небольшим программированием вы можете заставить PowerShell вычислять контрольные суммы за вас. Давайте возьмем приведенный выше код MD5 в качестве примера и представим, что хеш исходного файла на самом деле заканчивается цифрой 8.
На изображении ниже показаны строки кода, которые необходимо ввести, используя Shift + Enter после каждой.
Видите, как написано «Ложь»? Это говорит вам, что файл не тот. Если вы уверены, что у вас есть правильный хеш для нужного файла, то все подозрения ложатся на данные.
Обратите внимание, что контрольная сумма не может сказать вам, как файлы различны — это очень двоичный тест, если вы простите за каламбур. Но это полезный инструмент, и в нем есть некоторые очень специфические функции контрольной суммы (например, контрольная цифра и контрольный бит ), которые используются все время для поиска ошибок в данных
Microsoft сделала PowerShell доступным для macOS 10.13 или новее, а также для Linux, но если мысль об использовании чего-то, созданного с помощью Windows, вызывает у вас неприятные ощущения, знайте, что вы можете сделать то же самое в любой ОС.
macOS
Пользователям Mac необходимо запустить приложение «Терминал», которое находится в папке «Служебные программы» приложения. Введите команду shasum -a 256, за которой следует адрес файла, который вы хотите проверить (или просто перетащите в окно терминала).
Инструкция shasum эквивалентна Get-FileHash в PowerShell, а часть «-a 256» указывает, какой алгоритм использовать: 1 для SHA-1, 256 для SHA-256 и 512 для SHA-512.
Обратите внимание, как мы получили ту же контрольную сумму для тестового файла, что и при использовании PowerShell в Windows? В этом его реальная сила: независимо от того, какой компьютер или файловую систему вы используете, при одинаковом алгоритме вы всегда будете получать хеш-значения, которые можно напрямую сравнивать
Зачем нужен Хэш?
Основные цели у Хэш-функций всего три (вернее их предназначения).
1. Проверка целостности данных. В данном случае все просто, такая функция должна вычисляться быстро и позволять так же быстро проверить, что, к примеру, скачанный из интернета файл не был поврежден во время передачи.
2. Рост скорости поиска данных. Фиксированный размер блока позволяет получить немало преимуществ в решении задач поиска. В данном случае, речь идет о том, что, чисто технически, использование Хэш-функций может положительно сказываться на производительности
Для таких функций весьма важное значение представляют вероятность возникновения коллизий и хорошее распределение
3. Для криптографических нужд
Данный вид функций свертки применяется в тех областях безопасности, где важно чтобы результаты сложно было подменить или где необходимо максимально усложнить задачу получения полезной информации из Хэша