Хэш-функции являются необходимым элементом ряда криптографических схем. Под этим термином понимаются
функции, отображающие сообщения произвольной длины (иногда длина сообщения ограничена, но достаточно большим числом) в значения
фиксированной длины. Последние часто называют хэш-кодами. Таким образом, у всякой хэш-функции имеется большое количество коллизий,
т. е. пар значений x<=>y таких, что h(x)=h(y) . Основное требование, предъявляемое криптографическими приложениями к хэш-функциям, состоит в
отсутствии эффективных алгоритмов поиска коллизий.
Схемы электронной подписи -- основная сфера применения хэш-функций в криптографии. Поскольку используемые на практике схемы электронной
подписи не приспособлены для подписания сообщений произвольной длины, а процедура, состоящая в разбиении сообщения на блоки и в генерации
подписи для каждого блока по отдельности, крайне неэффективна, единственным разумным решением представляется применение схемы подписи к
хэш-коду сообщения. Нетрудно понять, что наличие эффективных методов поиска коллизий для хэш-функции подрывает стойкость протокола
электронной подписи.
Хэш-функции используются также в некоторых протоколах аутентификации для снижения их коммуникационной сложности,
т. е. для уменьшения длин пересылаемых сообщений, и в некоторых других криптографических протоколах