Дайджест сообщения (хеш-код, «отпечаток пальца» сообщения) – это строка бит фиксированной длины, которая вычисляется из сообщения с по- мощью хеш-функции.
Хеш-функция представляет собой однонаправленную криптографиче-
скую функцию H , которая применяется к сообщению M произвольной дли- ны и возвращает значение h фиксированной длины (рис. 3.12).
Рис. 3.12. Схема хеш-функции
Основные требования, которые предъявляются к криптографическим хеш-функциям:
Для любого M вычисление быстро.
H (M ) должно выполняться относительно
При известном h должно быть трудно (практически невозможно)
найти M , для которого h H ( M ) .
При известном сообщении M должно быть трудно найти другое со-
общение M M , такое, что H ( M ) H ( M ) .
Должно быть трудно найти какую-либо пару различных сообщений
M и M , для которых H ( M ) H ( M ) .
Первые два требования устанавливают однонаправленность хеш- функции: легко вычислить значение хеш-функции h по сообщению M , но трудно получить сообщение M , зная только значение h . Знание дайджеста не дает возможности восстановить исходное сообщение, но зато позволяет проверить целостность данных. Четвертое требование является более силь- ным, чем третье (т. е. при выполнении четвертого автоматически выполняет- ся и третье).
Хеш-функции используются также для необратимого шифрования паро- лей. В большинстве случаев парольные фразы не хранятся в исходном виде,
а хранятся лишь их хеш-коды. Хранить исходные пароли небезопасно, по- скольку злоумышленник может получить к ним доступ, а при хранении хеш- значений он не сможет обратить их в первоначальный вид. В ходе процеду- ры проверки введенного пользователем пароля вычисляется его хеш-код и сравнивается с сохранённым.
В настоящее время предложены и практически используются хеш- функции MD5, SHA-1, SHA-256, SHA-512, RIPEMD-160, алгоритм российского стандарта ГОСТ Р 34.11–2012 и др.
Теперь с использованием хеш-функции процесс подписи документа бу- дет выглядеть так (рис. 3.13).
Рис. 3.13. Схема электронной подписи документа
Рассмотрим порядок действий:
Боб вычисляет значение дайджеста документа.
Боб шифрует этот дайджест своим личным ключом, таким образом
подписывая документ.
Боб отправляет Алисе документ и электронную цифровую подпись (зашифрованное значение дайджеста).
Алиса вычисляет дайджест документа, присланного Бобом.
Далее расшифровывает подписанное значение дайджеста с помощью открытого ключа Боба. Если подписанное значение дайджеста совпадает с рассчитанным, то цифровая подпись верна и сообщение не было подвергну- то никаким изменениям (рис. 3.13).
Чтобы избежать атаки повторного использования в цифровую подпись дополнительно включают метку времени – дату и время подписания доку- мента.
Do'stlaringiz bilan baham: |