Вопрос проверяет понимание структуры JWT и того, какие данные и механизмы безопасности в нём заложены.
JWT состоит из трёх частей: header, payload и signature. Header описывает алгоритм подписи. Payload содержит данные пользователя и служебные поля. Signature гарантирует, что токен не был изменён. Все части кодируются в Base64 и разделяются точками.
JWT имеет строгую и стандартизированную структуру, которая одинакова для всех реализаций.
JWT (JSON Web Token) — это компактный токен, состоящий из трёх логических частей, закодированных в Base64 и объединённых в одну строку.
Перед перечислением важно понимать: JWT — это не зашифрованные, а подписанные данные.
Содержит метаинформацию о токене.
Типичные поля
alg — алгоритм подписи
typ — тип токена (JWT)
Назначение
сообщает, как проверять подпись
Содержит полезную нагрузку — claims.
Типы claims
зарегистрированные (iss, exp, sub)
публичные (данные пользователя)
кастомные
Важный момент
данные не зашифрованы
их может прочитать любой
Используется для проверки целостности токена.
Как формируется
header + payload
секретный ключ или публичный ключ
Что гарантирует
токен не был подменён
токен выдан доверенным сервером
JWT состоит из header, payload и signature, где подпись — ключевой элемент безопасности, а payload не предназначен для хранения секретных данных.