HMAC
Материал из Википедии — свободной энциклопедии
HMAC (сокращение от англ. hash message authentication code, хэш — код идентификации сообщений) — алгоритм усиления криптостойкости других криптоалгоритмов (чаще всего MD5). Авторы - Хьюго Кравчик, Михир Беллар и Ран Каннетти.
Содержание |
[править] Алгоритм
Хэш-функция разделяет соощения на блоки фиксированного размера и применяет к ним функцию сжатия. (MD5 или SHA-1 используют блоки 512 бит). После применения HMAC размер результата не меняется (128 или 160 бит для MD5 и SHA-1).
Функция HMAC определяется следующим образом:
, где:
- h - хеш-функция
- К - секретный ключ, дополненный нулями до размера блока
- m - сообщение для идентификации
- - конкатенация
- - операция исключающего или
- opad - 0x5c5c..5c (длина равна размеру блока)
- ipad - 0x3636..36 (длина равна размеру блока)
[править] Использование
HMAC используется в протоколах IPSec (для AH и ESP) и TLS (предшественник SSL).
[править] См также
[править] Источники
- У. Блэк — Интернет протоколы безопасности, Москва, издательство «Питер», 2001 ISBN 5-318-00002-9 (ISBN 0-13-013249-2 английский оригинал)
- RFC 2104