Что на самом деле означает весь этот хэш-материал MD5 [Объясненная технология]

  • Michael Cain
  • 0
  • 4921
  • 651
Реклама

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

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

Криптографическое хеширование

MD5 обозначает Message DАлгоритм igest 5 и был изобретен знаменитым криптографом США профессором Рональдом Ривестом в 1991 году для замены старого стандарта MD4. MD5 - это просто название для криптографической функции хеширования, придуманной Роном еще в 91 году..

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

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

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

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

Алгоритмы хеширования также играют роль в идентификации данных или файлов. Хорошим примером для этого является одноранговая сеть с общим доступом к файлам, такая как eDonkey2000. Система использовала вариант алгоритма MD4 (ниже) который также объединил размер файла в хеш, чтобы быстро указывать на файлы в сети.

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

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

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

Алгоритм дайджеста сообщений 5

Функция MD5 предоставляет 32-значное шестнадцатеричное число. Если бы мы превратили makeuseof.com в хеш-значение MD5, это выглядело бы так: 64399513b7d734ca90181b27a62134dc. Он был построен на методе под названием Меркле”“DamgÃ¥третья структура (ниже), который используется для создания так называемых “противоударный” хеш-функции.

Однако безопасность не является всеобщей проверкой, и в 1996 году в алгоритме хеширования MD5 были обнаружены потенциальные недостатки. В то время они не считались смертельными, и MD5 продолжал использоваться. В 2004 году гораздо более серьезная проблема была обнаружена после того, как группа исследователей описала, как сделать так, чтобы два отдельных файла имели одинаковое хеш-значение MD5. Это был первый случай столкновительной атаки на алгоритм хеширования MD5. Атака на столкновение пытается найти два произвольных выхода, которые выдают одно и то же значение хеша - следовательно, конфликт (два файла, существующие с одинаковым значением).

В течение следующих нескольких лет предпринимались попытки найти дальнейшие проблемы с безопасностью в MD5, и в 2008 году другой исследовательской группе удалось использовать метод коллизионной атаки для фальсификации действительности сертификата SSL. Это может заставить пользователей думать, что они смотрят безопасно, а когда нет. Министерство внутренней безопасности США объявило, что: “пользователи должны избегать использования алгоритма MD5 в любом качестве. Как показало предыдущее исследование, его следует считать криптографически взломанным и непригодным для дальнейшего использования.“.

Несмотря на предупреждение правительства, многие службы по-прежнему используют MD5 и, как таковые, подвергаются техническому риску. Однако возможно “поваренная соль” пароли, чтобы предотвратить потенциальные злоумышленники, использующие атаки по словарю (тестирование известных слов) против системы. Если у хакера есть список случайных часто используемых паролей и база данных ваших учетных записей, они могут сравнить хэши в базе данных с теми, которые есть в списке. Соль - это случайная строка, которая связывается с существующими хешами паролей, а затем снова хешируется. Значение соли и полученный хеш затем сохраняются в базе данных.

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

Заключение

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

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

Всегда нужно было что-то хешировать? Вы проверяете загруженные файлы? Знаете ли вы какие-либо хорошие веб-приложения MD5? Дайте нам знать об этом в комментариях!

Вводное изображение: Shutterstock




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