HMAC
Что такое HMAC?
HMACКонструкция MAC с ключом на основе криптографической хеш-функции, определённая в RFC 2104 и FIPS 198-1.
HMAC (Hash-based Message Authentication Code) — это симметричная MAC-конструкция, описанная в RFC 2104 и FIPS 198-1, которая объединяет секретный ключ K с хеш-функцией H для получения тега: HMAC(K,m) = H((K' XOR opad) || H((K' XOR ipad) || m)). Вложенная структура делает HMAC устойчивым к атакам расширения длины даже при использовании хешей Меркла–Дамгора (например, SHA-256), а его безопасность сводится к слабой стойкости к коллизиям и псевдослучайности функции сжатия. Чаще всего применяются HMAC-SHA-256 и HMAC-SHA-512: в защите записей TLS, подписи JWT, OAuth, IPsec, а также как PRF внутри PBKDF2 и HKDF. HMAC остаётся надёжным выбором для симметричной аутентификации сообщений.
● Примеры
- 01
Токены JWT с алгоритмом HS256 подписываются HMAC-SHA-256.
- 02
AWS Signature Version 4 использует HMAC-SHA-256 для подписи API-запросов.
● Частые вопросы
Что такое HMAC?
Конструкция MAC с ключом на основе криптографической хеш-функции, определённая в RFC 2104 и FIPS 198-1. Относится к категории Криптография в кибербезопасности.
Что означает HMAC?
Конструкция MAC с ключом на основе криптографической хеш-функции, определённая в RFC 2104 и FIPS 198-1.
Как защититься от HMAC?
Защита от HMAC обычно сочетает технические меры и операционные практики, как описано в определении выше.
Какие есть другие названия HMAC?
Распространённые альтернативные названия: MAC с ключом на хеше, HMAC RFC 2104.