Общие сведения | Энциклопедия | Научные публикации | Публицистика | Новости | Каталоги | Авторы |
| На главную | О проекте | Контакты | | |
![]() |
Статья в Энциклопедическом Фонде
Хэш-функция
Хэш-функция (функция свёртки) ― это функция, отображающая аргумент произвольной конечной длины в образ фиксированной длины.
Результат работы данной функции называют хэшем, хэш-кодом или дайджестом сообщения (англ. message digest). Если хэш-функция зависит от секретного ключа, то она называется ключевой, в противном случае бесключевой. Простым примером хеширования может служить нахождение контрольной суммы сообщения: сумма кодов всех входящих в него символов, от которой берётся несколько последних цифр. Полученное число является примером хэш-кода исходного сообщения. Применение хеширования 1. Проверка на наличие ошибок Например, контрольная сумма может быть передана по каналу связи вместе с основным текстом. На приёмном конце, контрольная сумма может быть рассчитана заново и её можно сравнить с переданным значением. Если будет обнаружено расхождение, то это значит, что при передаче возникли искажения и можно запросить повтор. 2. Проверка пароля В большинстве случаев пароли фразы не хранятся на целевых объектах, хранятся лишь их хэш-значения. Хранить пароли в открытом виде нецелесообразно, так как в случае несанкционированного доступа злоумышленник узнает все пароли и сразу сможет ими воспользоваться, а при хранении хэш-значений он узнает лишь хэш-значения, которые не обратимы в исходные данные, в данном случае в пароли. В ходе процедуры аутентификации вычисляется хэш-значение введённой парольной фразы, и сравнивается с сохранённым. Примером в данном случае могут служить ОС GNU/Linux и Microsoft Windows XP. В них хранятся лишь хэш-значения парольных фраз из учётных записей пользователей. 3. Ускорение поиска данных Например, при записи текстовых полей в базе данных может рассчитываться их хэш-код и данные могут помещаться в раздел, соответствующий этому хэш-коду. Тогда при поиске данных надо будет сперва вычислить хеш-код текста и сразу станет известно, в каком разделе их надо искать, то есть, искать надо будет не по всей базе, а только по одному её разделу. 4. Использование хеш-функций в криптографии. К хэш-функциям, используемым в протоколах аутентификации должны удовлетворять следующим требованиям: ■ Стойкость против попыток найти коллизии. *Коллизией называется пара аргументов М1 и М2 которым соответствует одно и то же значение хэш-функции Н(М1) = Н(М2). Стойкости к возникновению коллизий - важная оценка хэш-функций с точки зрения криптографической стойкости коллизий (два различных набора данных должны иметь различные результаты преобразования). ■ Обеспечивать невозможность вычислить исходные данные по результату преобразования. В настоящее время существует три способа построения хэш-функции: ■ на основе трудно решаемой математической задачи; ■ на основе алгоритмов блочного шифрования; ■ разработанные с нуля. Каждый из перечисленных выше методов обладает своими достоинствами и недостатками, однако наиболее распространенными на сегодняшний день оказались два последних метода. Это связано с тем, что при построении хэш-функции с нуля появляется возможность учета эффективности программной реализации. В свою очередь, широкое использование кэш-функций, построенных на основе алгоритмов блочного шифрования, является результатом тщательной проработки вопроса стойкости многих из существующих блочных алгоритмов. Список алгоритмов хеширования: ■ Adler-32 ■ CRC ■ SHA-1 ■ SHA-2 (SHA-224, SHA-256, SHA-384, SHA-512) ■ HAVAL ■ MD2 ■ MD4 ■ MD5 ■ N-Hash ■ RIPEMD-160 ■ Snefru ■ Tiger (TTH) ■ Whirlpool ■ ГОСТ Р34.11-94 (ГОСТ 34.311-95) ■ IP Internet Checksum (RFC 1071) Источники 1. ru.wikipedia.org - Википедия, Сетевая энциклопедия. 2. "Методы и средства защиты компьютерной информации" Р.Р. Хамидуллин. Учеб. Пособие СПб.: Изд-во СЗТУ, 2006 г. 3. ГОСТ Р 34.11-94. Информационная технология. Криптографическая защита информации. Функция хэширования. |
|
Бртп - бртп (www.zavodkristall.ru)
|