Декодируйте и проверяйте любой JWT: HS256, RS256, ES256 и JWKS

Вставьте токен ниже — header, payload, claims и проверка подписи (HS256, RS256/ES256, JWKS) появятся мгновенно.

🔒 Работает локально в браузере — ничего не загружается.

Об этом инструменте

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 происходят целиком в браузере. Токен и секрет не загружаются — безопасно вставлять боевые токены при отладке.