Введение
В мире цифровых коммуникаций крайне важно гарантировать, что сообщения не только остаются конфиденциальными, но и не были изменены во время передачи (целостность), а также что они действительно исходят от заявленного отправителя (аутентичность). В то время как простые хеш-функции могут проверить случайное повреждение данных, они не могут предотвратить злонамеренное вмешательство, поскольку любой может пересчитать хеш измененного сообщения.
Здесь на помощь приходит HMAC (Hash-based Message Authentication Code — Код аутентификации сообщения на основе хеша). HMAC — это особый тип MAC (Message Authentication Code), который объединяет криптографическую хеш-функцию (например, SHA-256) с секретным ключом. Только стороны, владеющие секретным ключом, могут генерировать и проверять HMAC для данного сообщения. Этот процесс обеспечивает как целостность данных, так и их аутентичность.
В этой лабораторной работе вы получите практический опыт работы с HMAC. Вы начнете с понимания концепции, затем используете мощный инструмент командной строки openssl для генерации ключей и вычисления HMAC. Наконец, вы увидите, как реализовать HMAC в скрипте Python, что является распространенной задачей при разработке приложений.



