Выбор ответа Middle Криптография на практике и JWT спрашивают часто обновлено

HMAC и обычный хеш

Вопрос

Сервис подписывает вебхуки как sha256(payload) и кладёт результат в заголовок. В чём проблема?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Хеш без ключа посчитает кто угодно: изменят payload и пересчитают. Нужен HMAC. Хеш защищает от случайного повреждения, но не от подмены.

Варианты ответа

  1. SHA-256 устарел для подписи, нужно перейти на SHA-1 или MD5 с длинным ключом
  2. Хеш без ключа посчитает кто угодно: изменят payload и пересчитают. Нужен HMACправильный ответ
  3. Проблемы нет: SHA-256 устойчив к коллизиям, поэтому подделать payload нельзя
  4. Хеш надо передавать в теле вместе с payload, а не в заголовке, где его подменят

Разбор

Хеш защищает от случайного повреждения, но не от подмены. HMAC требует секретного ключа, который знают только отправитель и получатель. MD5 хуже, а место передачи не важно.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.