Об этом инструменте
JWTViewer — инспектор токенов без загрузки на сервер. Большинство онлайн-декодеров отправляют токен на бэкенд — реальный риск, ведь действующий JWT часто является рабочими учётными данными сессии. Здесь декодирование происходит прямо во вкладке браузера; загрузите страницу, отключитесь от сети — всё продолжит работать.
Временные метки в exp, iat и nbf автоматически переводятся в ваш часовой пояс, а баннер статуса сразу показывает: токен действителен, истёк или ещё не активен. Больше бесплатных инструментов — dec0de.dev.
JSON Web Token — это три части Base64url, разделённые точками: header, payload с claims и подпись. Первые две лишь закодированы, а не зашифрованы, поэтому их может прочитать кто угодно — именно это и делает декодер. Для доверия важна подпись: она доказывает, что токен выпущен владельцем секрета или закрытого ключа и не был изменён. Стандартные claims — iss, sub, aud, exp, iat — поясняются рядом, а проверка HS256 подтверждает подпись, если у вас есть общий секрет.
Частые вопросы
JWT зашифрован?
Нет. Стандартный JWT только закодирован в Base64url, а не зашифрован, поэтому header и payload может прочитать любой. Никогда не кладите секреты в payload; подпись защищает целостность, а не конфиденциальность.
Можно ли здесь проверить подпись JWT?
Да. Для HS256 введите общий секрет — инструмент пересчитает HMAC. Для RS256/RS384/RS512/ES256/ES384/ES512 вставьте открытый ключ издателя (PEM) или загрузите JWKS — инструмент проверит через Web Crypto API, всё в браузере, ничего никуда не отправляется.
Что такое JWKS и как его использовать здесь?
JWKS («JSON Web Key Set») — небольшой публичный JSON-документ, обычно по URL вроде /.well-known/jwks.json, который публикует провайдер идентификации (Auth0, Okta, Cognito, ваш собственный auth-сервер…), чтобы любой мог проверить токены, подписанные им через RS256/ES256. Введите URL JWKS и нажмите «Загрузить» (или вставьте JSON напрямую) — инструмент выведет ID, алгоритм и тип каждого ключа, автоматически подобрав тот, чей "kid" совпадает с header вашего декодированного токена.
Почему мой JWT показан как истёкший?
Claim exp — это Unix-время; если оно раньше текущего, токен истёк. Инструмент переводит exp, iat и nbf в ваше локальное время, чтобы точно видеть, когда истёк срок.
Мой токен отправляется на сервер?
Нет. Декодирование и проверка HS256 происходят целиком в браузере. Токен и секрет не загружаются — безопасно вставлять боевые токены при отладке.