Выбор ответа Junior Аутентификация и права спрашивают часто обновлено

Зашифрован ли JWT

Вопрос

Что верно про payload подписанного JWT (HS256 или RS256)?

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

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

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

Коротко

Правильный ответ: Он не зашифрован: прочитать может любой, подпись защищает от изменений. Header и payload это просто base64url-кодированный JSON, их декодирует кто угодно без ключа.

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

  1. Он зашифрован ключом сервера, и без ключа прочитать его нельзя
  2. Его можно прочитать, зная секрет, которым подписан токен
  3. Содержимое хранится на сервере, а в токене лежит только id сессии
  4. Он не зашифрован: прочитать может любой, подпись защищает от измененийправильный ответ

Разбор

Header и payload это просто base64url-кодированный JSON, их декодирует кто угодно без ключа. Подпись позволяет серверу проверить, что токен выпущен им и не изменён. Поэтому в payload не кладут секреты и персональные данные. Шифрование есть в отдельном стандарте JWE. Токен со ссылкой на серверное хранилище это уже по сути сессия.

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

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

Термины по теме