JWT
Утилита JWT декодирует JSON Web Tokens для изучения структуры, утверждений и свойств безопасности без закрытого ключа.
Использование инструмента
- Вставьте JWT в поле ввода. Принимается стандартный формат из трёх частей, разделённых точками.
- Инструмент автоматически разделяет и декодирует заголовок и данные из Base64.
- Изучите вывод в трёх разделах ниже.
Для просмотра ключи не нужны. Проверка подписи — отдельная операция.
Декодированные разделы
Заголовок
Показывает алгоритм (alg) и ID ключа (kid). Здесь появляются предупреждения об алгоритме:
| Условие | Уровень предупреждения |
|---|---|
alg: none | Критический — у токена нет подписи |
alg: HS256 | Уведомление — симметричный; слабый секрет можно подобрать |
alg: RS256 или ES256 | Без предупреждения |
Данные
Показывает все утверждения со значениями и предполагаемыми типами. Стандартные утверждения:
| Утверждение | Значение |
|---|---|
iss | Издатель |
sub | Субъект (обычно ID пользователя) |
aud | Аудитория |
exp | Время истечения |
nbf | Не ранее указанного времени |
iat | Время выпуска |
jti | ID JWT (уникальный идентификатор токена) |
Собственные утверждения появляются под стандартными.
Проверка срока действия
Если токен содержит exp, инструмент сравнивает его с текущим временем и показывает:
- Действителен — срок не истёк.
- Срок истёк — срок прошёл, с указанием прошедшего времени.
- Без срока — в токене нет
exp.
Подпись
Показывает исходную подпись в Base64url. Без предоставленного ключа инструмент не пытается её проверить; раздел служит справкой и подтверждает наличие подписи.
На что обратить внимание
- Некоторые библиотеки принимают
alg: noneбез проверки. Проверьте, принимает ли их целевое приложение. - Долгоживущие токены (
expчерез много дней или лет послеiat) могут указывать на отсутствие ротации токенов. - Конфиденциальные данные (персональные сведения, внутренние ID, флаги ролей) в незашифрованных утверждениях доступны любому обладателю токена.
- Токены без
jtiнельзя отзывать по отдельности.