Декодер JWT и проверка подписи
Вставьте JSON Web Token, чтобы увидеть заголовок и полезную нагрузку, значение каждого поля и срок действия. Добавьте секрет или открытый ключ, чтобы проверить подпись. Всё выполняется в браузере, токены не покидают ваше устройство.
Бесплатно · Без регистрации
Как пользоваться
- Вставьте JWT в поле «Закодированный токен». Префикс «Bearer » удаляется автоматически.
- Изучите декодированный заголовок и данные. Каждое поле поясняется, а даты вроде exp и iat показываются в вашем часовом поясе.
- Строка о сроке действия покажет, действует ли токен, истёк ли он или ещё не начал действовать.
- Для проверки подписи введите общий секрет для HS256, HS384 или HS512, либо вставьте открытый ключ или JWKS для токенов RS, PS, ES или EdDSA.
Почему стоит использовать этот инструмент
Мгновенное декодирование
Заголовок и данные декодируются сразу при вставке, с цветным JSON и подсветкой трёх частей токена.
Понятные пояснения
Стандартные поля и популярные поля OpenID Connect объясняются, а метки времени превращаются в понятные даты.
Проверка срока
Сразу видно, действует ли токен, истёк ли он или ещё не активен, и сколько осталось.
Проверка подписи
HS256/384/512, RS256/384/512, PS256/384/512, ES256/384/512 и EdDSA с секретом, ключом PEM, JWK или JWKS.
Конфиденциально
Декодирование и проверка используют встроенную криптографию браузера. Токены и ключи никуда не отправляются и не сохраняются.
Понятные ошибки
Ясные сообщения об обрезанных токенах, неверном base64, зашифрованных JWE, alg none и ключах неподходящего типа.
Что такое JWT
JSON Web Token (JWT, RFC 7519) — компактный способ передавать подписанную информацию, например о том, кто пользователь, между системами. Он состоит из трёх частей в base64url, разделённых точками: заголовка с алгоритмом, полезной нагрузки с полями (claims) и подписи.
Заголовок и данные только закодированы, а не зашифрованы. Любой, у кого есть токен, может их прочитать — именно это и делает декодер. Доверие к JWT обеспечивает подпись: она доказывает, что токен создал владелец ключа и что его не меняли.
Распространённые алгоритмы подписи
| Алгоритм | Тип ключа | Чем проверять |
|---|---|---|
| HS256 / HS384 / HS512 | Общий секрет (HMAC) | Тем же секретом, которым подписан токен |
| RS256 / RS384 / RS512 | Пара ключей RSA | Открытым ключом RSA издателя |
| PS256 / PS384 / PS512 | Пара ключей RSA (дополнение PSS) | Открытым ключом RSA издателя |
| ES256 / ES384 / ES512 | Пара ключей на эллиптических кривых | Открытым ключом EC издателя |
| EdDSA | Пара ключей Ed25519 | Открытым ключом Ed25519 издателя |
Где найти открытый ключ
Провайдеры удостоверений, такие как Auth0, Okta, Microsoft Entra ID, Google и Keycloak, публикуют ключи в формате JWKS. Откройте адрес /.well-known/openid-configuration провайдера, перейдите по ссылке jwks_uri и вставьте сюда весь JSON. Ключ с kid, совпадающим с заголовком токена, выбирается автоматически.
Советы по безопасности
- Не вставляйте рабочие токены и секреты в инструменты, которые отправляют данные на сервер. Эта страница после загрузки работает и без сети.
- Не храните пароли и другие секреты в полезной нагрузке: её может прочитать любой, у кого есть токен.
- Перед тем как доверять токену, всегда проверяйте на сервере подпись, издателя, аудиторию и срок действия.
- Отклоняйте токены с alg none и задавайте ожидаемый алгоритм в коде, а не берите его из токена.
Частые вопросы
Безопасно ли вставлять сюда мой JWT?
Да. Токен декодируется и проверяется JavaScript в вашем браузере. Он не загружается, не записывается в журналы и не сохраняется. Но всё равно обращайтесь с действующими токенами как с паролями.
Можно ли декодировать JWT без секрета?
Да. Заголовок и данные — это JSON в base64url, их может прочитать любой. Секрет или ключ нужны только для проверки подписи или создания нового токена.
Почему подпись неверна?
Ключ не совпадает с тем, которым подписан токен, токен был изменён, или секрет закодирован в base64, а соответствующая опция не отмечена. Для токенов RS и ES используйте открытый ключ издателя с правильным kid.
Что означает exp в JWT?
exp — время истечения в виде метки времени Unix в секундах. После него токен должен отклоняться. iat — время выдачи, nbf — время, до которого токен нельзя принимать.
Может ли инструмент декодировать зашифрованные токены (JWE)?
Он распознаёт токены JWE из пяти частей и показывает их заголовок. Данные зашифрованы и читаются только закрытым ключом получателя.
Чем HS256 отличается от RS256?
HS256 использует один общий секрет для подписи и проверки, поэтому его должен знать каждый проверяющий сервис. RS256 подписывает закрытым ключом и проверяет открытым, который можно спокойно распространять.
JSON Web Token простыми словами
Похожие инструменты
Нужно что-то создать?
Расскажите, что вы хотите построить.
Расскажите, что вам нужно создать: от простого сайта до полноценного приложения, AI-решения, автоматизации или индивидуальной системы.