JWT Encoder / Decoder

Расшифруйте JWT-токен и проверьте подпись или соберите новый токен из заголовка, данных и секрета.

Режим
Заголовок (header)
Полезная нагрузка (payload)

Всё считается в вашем браузере: введённые данные никуда не отправляются.

Устройство JWT

JSON Web Token состоит из трёх частей через точку: заголовок, полезная нагрузка и подпись. Первые две — это JSON, закодированный в Base64URL. Их может прочитать любой, у кого есть токен, — шифрования здесь нет. Подпись подтверждает, что содержимое не меняли после выпуска: её проверяют сервером по секрету или открытому ключу.

Стандартные поля полезной нагрузки

ПолеЗначение
subидентификатор пользователя или объекта
iatвремя выпуска, Unix-время в секундах
expсрок действия — после него токен недействителен
nbfвремя, раньше которого токен не принимается
iss, audкто выпустил токен и для кого он предназначен

Инструмент переводит iat, nbf и exp в обычную дату и показывает, не истёк ли токен.

Проверка и создание подписи

Для алгоритмов HMAC — HS256, HS384, HS512 — введите секрет, и инструмент сравнит подпись токена с вычисленной. В режиме «Кодировать» он подпишет заголовок и данные вашим секретом. Вычисления выполняются в браузере через Web Crypto API.

Безопасность

Не храните в полезной нагрузке пароли и персональные данные: её видно без ключа. Никогда не принимайте на сервере токены с "alg": "none". Токены от боевых систем тоже лучше не вставлять в сторонние сайты: этот инструмент ничего не отправляет на сервер, но привычка безопаснее.

Частые вопросы

Можно ли расшифровать JWT без ключа?

Да, заголовок и полезная нагрузка не зашифрованы, а только закодированы. Ключ нужен для проверки подписи и выпуска новых токенов.

Поддерживается ли RS256?

Декодирование работает для любых алгоритмов. Проверка и создание подписи пока доступны для HS256, HS384 и HS512.

Отправляется ли токен на сервер?

Нет, декодирование и подпись выполняются в браузере.

Другие инструменты

Все инструменты для разработчиков