EMZETT.
Войти

HMAC: защита сообщений секретным ключом

Коротко: HMAC — контрольное значение из сообщения и секретного ключа; оно доказывает, что сообщение исходит от обладателя ключа и не изменено в пути.

Подробнее: Обычный хеш (например, SHA-256) может вычислить любой: злоумышленник меняет сообщение и пересчитывает хеш. HMAC (hash-based message authentication code) включает секретный ключ; без него никто не может получить действительное значение.

Подробности

Как это работает

HMAC(ключ, сообщение) = Hash( (ключ ⊕ opad) ‖ Hash( (ключ ⊕ ipad) ‖ сообщение ) )

Отправитель и получатель знают один и тот же секретный ключ; получатель пересчитывает HMAC и сравнивает.

См. также: хеширование, SHA-256, вебхуки, JWT, цифровая подпись