Декодер JWT

Декодируйте JWT и прочитайте заголовок, утверждения полезной нагрузки и подпись, с датами exp, nbf, iat и статусом срока действия. Локально, ничего не загружается.

Префикс "Bearer " удаляется автоматически.

Заголовок
{
  "alg": "HS256",
  "typ": "JWT"
}
Полезная нагрузка
{
  "sub": "1234567890",
  "name": "John Doe",
  "iat": 1516239022
}
АлгоритмHS256
ПодписьSflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Декодирование не проверяет подпись. Кто угодно может создать токен с любым содержимым — прежде чем доверять, проверьте его в JWT Verifier с правильным ключом.

Что такое Декодер JWT?

Декодер разбивает токен JSON Web Token на заголовок, полезную нагрузку и подпись и форматирует JSON. Временные утверждения (exp, nbf, iat) преобразуются в читаемые даты UTC с относительным временем, а значок статуса сообщает, истёк ли токен, ещё не действителен или не имеет срока. Он только декодирует и не проверяет подпись.

Как пользоваться Декодер JWT

  1. Вставьте токен (начальное Bearer удаляется автоматически).
  2. Прочитайте декодированный заголовок (алгоритм, тип, идентификатор ключа) и утверждения полезной нагрузки.
  3. Проверьте статус срока действия и даты exp/nbf/iat.
  4. Перед тем как доверять любому утверждению, проверьте токен в верификаторе JWT с нужным ключом.

Пример

Ввод
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
Вывод
Header {"alg": "HS256", "typ": "JWT"} · payload {"sub": "1234567890", "name": "John Doe", "iat": 1516239022} · status: no expiration

Когда использовать Декодер JWT

Используйте для отладки аутентификации: проверьте, какие утверждения, области доступа, аудиторию и срок несёт токен. Не считайте декодированные утверждения достоверными: любой может создать токен с произвольным содержимым. Зашифрованные токены (JWE, пять частей) нельзя декодировать без ключа.

Как работает Декодер JWT

Компактный JWS состоит из трёх частей Base64URL, разделённых точками. Первые две декодируются (Base64URL → байты → UTF-8) и разбираются как JSON; третья показывается как есть, потому что это двоичные данные подписи. Временные утверждения это значения NumericDate (секунды с 1970-01-01 UTC), сравниваемые с часами вашего устройства. Ничто не покидает ваш браузер.

Распространенные Случаи Использования

  • Выяснить, почему API возвращает 401: токен истёк или предназначен другой аудитории?
  • Прочитать роли или области доступа внутри токена доступа.
  • Проверить kid в заголовке, чтобы увидеть, каким ключом подписан токен.
  • Изучить ID-токены провайдера OpenID Connect.

Примечание по Безопасности

Декодирование выполняется только в вашем браузере. Относитесь к JWT как к паролям: любой, у кого есть действительный токен, может использовать его до истечения срока.

Часто Задаваемые Вопросы

Безопасно ли вставлять боевой токен?

Токен декодируется локально и никуда не отправляется. Тем не менее действующий токен это учётные данные: отзовите его, если вы поделились им там, где не контролируете доступ.

Почему декодирование это не проверка?

Полезная нагрузка лишь закодирована в Base64URL, а не зашифрована. Проверка требует сверки подписи с секретом или открытым ключом.

Что означают exp, nbf и iat?

exp это время окончания срока, nbf «не ранее» (раньше токен недействителен), а iat время выдачи; всё в секундах с начала эпохи Unix.

Другие категории