Что такое хеш-сумма и зачем это необходимо.

Что такое хеш-сумма и зачем это необходимо.

@etnosism

Автор статьи: Стрельников.

Мы ежедневно обмениваемся информацией с соратниками, знакомыми. Отправляем друг другу файлы, фото, видео и т.д. А как мы можем обеспечить и проверить целосность файла? Например, как нам узнать, тот ли файл мы скачиваем? Не подменил ли его случайно товарищ майор?

MITM-атаки

Как нам всем известно, трафик в Telegram идёт по маршруту: <отправитель>-<сервер>-<получатель>. Таким образом, все файлы, фото, видео и текст, которые вы отправляете своим соратникам, так или иначе сперва загружаются на сервера Telegram, а потом уже получатель загружает их с сервера. Проверяется элементарно: отправьте файл собеседнику, а затем удалите его из памяти своего девайса (не из чата). Файл всё так же будет доступен вашему собеседнику, хоть вы и удалили его со своего устройства. Причина в том, что файл уже находится на сервере. Вроде бы ясно.

Такая система устойчива к т.н. "атакам посредника" (MITM-атакам), то бишь когда в канал связи между отправителем сервером или между сервером и получателем вклинивается товарищ СБУшник или ФСБшник. Товарищ майор может подменить файл, который вам/вы отправляли. Может "зашить" в него вредоносный код, вирус. Нет, этот вирус не будет шифровать ваш диск или блокировать доступ к ПК. Вы ничего даже не заметите (скорее всего). А вот товарищ майор сможет узнать ваш IP-адрес, ваш MAC адрес, сможет просматривать содержимое ваших дисков (про шифрование дисков будет следующая статья). Для наглядности обратим внимание на схему.

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

MD5, SHA-1, SHA-256

MD5, SHA-1 и SHA-256. Что это такое? Это три основных алгоритма (я ними пользуюсь чаще всего) хеширования информации. Есть ещё другие, например CRC32, но мне по душе эти три. Что такое хеширование? Простыми словами: обработка данных определённой функцией по определённому алгоритму, в результате чего генерируется УНИКАЛЬНАЯ для каждого файла хеш-сумма (что-то по типу идентификатора), которая и позволяет проверить целосность файла. Хеш-суммирование устроено таким образом, что при измененни исходного файла (даже на 1 бит) его хуш-сумма будет совершенно другой. Даже если изменить в огромной фотографии один пиксель или изменить одну букву в огромном текстовом документе, то его хеш поменяется. После прочтения этой статьи вы сможете это проверить. Как это использовать: при отправке файла вы пишете значение его хеш-суммы. (сумму проверяете перед отправкой). После получения ваш адресат тоже проверяет сумму и если они совпали, то файл подлинный.

Как проверить хеш-сумму?

Можете найти утилиты в интернете и установить пару на своё усмотрение. Но я бы рекомендовал использовать веб-ресурсы в связке с системой TOR/TAILS, о которой я рассказывал в предыдущей статье.


Вот один из сервисов - OnlineMD5

Интерфейс интуитивно понятен.

Выбираете необходимый файл, нажав "Browse" или просто перетаскиваете его в большое белое поле.
Загрузив файл, выбираете алгоритм. MD5/ SHA-1/ SHA-256.

В поле checksum сайт выводит хеш-сумму загруженного файла.

Очень удобная вещь, на этом сайте можно сразу же сравнить хеш-суммы.

В поле "Compare with" вводите сумму, с которой необходимо сравнить (ту, которую вы получили от отправителя).

Как вы видите, если суммы не совпадают, то сайт выдаёт нам ошибку (красный крестик).
В случае успеха появится галочка. Понятно.

Так какой же алгоритм выбрать?

Лично я бы предпочёл SHA-256, так как в MD-5 и SHA-1 были найдены т.н. "коллизии", когда два разных файла генерируют один и тот же хеш. В алгоритме SHA-256 до сегодняшнего дня таких коллизий обнаружено не было. Пользуйтесь знаниями и не попадайтесь на бутылку мсье Мусорье.

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

Слава ЭНО!





Report Page