JWT-декодер онлайн

JWT декодер онлайн: заголовок, payload и проверка подписи

Вставьте JSON Web Token, чтобы прочитать его заголовок и нагрузку (payload) как отформатированный JSON, увидеть, когда он выпущен и когда истекает, и что означает каждое стандартное утверждение. Добавьте секрет или открытый ключ — и подпись будет проверена. Токен раскодируется в вашем браузере и никуда не отправляется.

HS256, HS384, HS512: общий секрет. RS, PS, ES и EdDSA: открытый ключ в PEM (-----BEGIN PUBLIC KEY-----), JWK или JWKS.
  • Заголовок

    { "alg": "HS256", "typ": "JWT" }

  • Полезная нагрузка

    { "sub": "1234567890", "name": "John Doe", "iat": 1516239022 }

Срок действияБез срока действия (exp)
АлгоритмHS256 — HMAC с SHA-256 (общий секрет)
ПодписьНе проверена — добавьте ключ
Тип (typ)JWT
Субъект (sub)1234567890
Выпущен (iat)18 янв. 2018 г., 01:30:22 UTC (9 лет назад)
Другие утвержденияname

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

Расчёт выполняется на вашем устройстве · формулы проверены на известных значениях · Как мы проверяем

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

  1. Вставьте токен в поле — длинный текст, который начинается с eyJ. Скопированный заголовок Authorization: Bearer …, кавычки вокруг токена и переносы строк внутри него убираются автоматически.
  2. Прочитайте раскодированные заголовок и полезную нагрузку в виде отформатированного JSON, статус срока действия вверху и стандартные утверждения (claims) с датами в вашем часовом поясе — и с тем, сколько времени прошло или осталось.
  3. Чтобы проверить подпись, введите ключ: общий секрет для HS256, HS384 и HS512 или открытый ключ для токенов RS, PS, ES и EdDSA — блоком PEM, в виде JWK или целым JWKS. Результат: Подпись верна или Подпись неверна.

Что внутри JWT

JSON Web Token (RFC 7519) — это три куска текста base64url, соединённые точками: header.payload.signature. Заголовок и нагрузка — объекты JSON, они лишь закодированы, а не зашифрованы, поэтому всегда начинаются с eyJ — так кодируется {". Заголовок называет алгоритм подписи (alg), нагрузка содержит утверждения о пользователе или сессии. Подпись вычисляется над первыми двумя частями ровно в том виде, как они записаны, поэтому изменение одного символа в любой из них её ломает.

УтверждениеНазваниеЧто означает
issИздательКто создал и подписал токен, часто URL сервера авторизации
subСубъектО ком токен, обычно ID пользователя
audАудиторияСервис или сервисы, которые должны его принять; токен для одного API другой API обязан отклонить
expСрок действияПосле этого момента токен должен отклоняться
nbfНе раньшеДо этого момента токен должен отклоняться
iatВремя выпускаКогда токен создан
jtiID токенаУникальный ID, чтобы сервер мог отклонить уже виденный токен

Три даты — это NumericDate: секунды с 1 января 1970 года (UTC), те же числа, что Unix-время. Значение из 13 цифр — это миллисекунды, частая ошибка, о которой декодер предупредит. Даты показываются в часовом поясе вашего устройства, например по Москве (UTC+3). Серверы обычно допускают расхождение часов на минуту-другую; статус здесь считается без запаса.

Пример

RFC 7515, стандарт JSON Web Signature, подписывает в своём первом примере (приложение A.1) такой токен:

eyJ0eXAiOiJKV1QiLA0KICJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJqb2UiLA0KICJleHAiOjEzMDA4MTkzODAsDQogImh0dHA6Ly9leGFtcGxlLmNvbS9pc19yb290Ijp0cnVlfQ.dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk

Его заголовок раскодируется в { "typ": "JWT", "alg": "HS256" } — токен HMAC SHA-256, — а нагрузка в { "iss": "joe", "exp": 1300819380, "http://example.com/is_root": true }. Издатель — «joe», есть одно собственное утверждение (http://example.com/is_root), а exp 1300819380 — это 2011-03-22 18:43:00 UTC: в октябре 2026 года статус — «Истёк 16 лет назад». Чтобы проверить подпись, вставьте ключ из RFC в виде JWK:

{"kty":"oct","k":"AyM1SysPpbyDfgZld3umj1qzKObwVMkoqQ-EstJQLr_T-1qS0gZH75aKtMN3Yj0iPS4hcgUuTwjAzZr1Z9CAow"}

и подпись окажется верной. Измените одну букву нагрузки — и она станет неверной.

В поле уже стоит известный пример с jwt.io; его секрет — your-256-bit-secret. Это 19 байт, меньше 32 байт, которых RFC 7518 требует для HS256, поэтому при проверке декодер это отметит.

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

Советы по безопасности

Посмотреть время в других форматах или разобрать идентификатор из sub помогут генератор и проверка UUID и форматирование JSON.

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

Безопасно ли вставлять сюда JWT?

Токен раскодируется и проверяется JavaScript в вашем браузере, никогда не отправляется на сервер, и страница его не сохраняет. Но действующий токен работает как временный пароль, поэтому с любым сайтом лучше привыкнуть вставлять истёкшие или тестовые токены, а если вставили живой туда, где не уверены, — выйти из системы (это отзывает часть токенов).

Можно ли раскодировать JWT без секрета?

Да. Заголовок и нагрузка только закодированы в base64url, ключ для чтения не нужен. Секрет или открытый ключ нужен лишь для проверки подписи — чтобы доказать, что токен подлинный и не изменён.

Почему декодер пишет «Подпись неверна»?

Либо токен изменили после подписи, либо ключ не тот: секрет из другого окружения (тестового вместо боевого), пропущенный или лишний символ, старый открытый ключ после ротации или секрет, который сначала нужно раскодировать из Base64 (вставьте его как JWK типа oct).

Чем JWT отличается от JWS и JWE?

JWS (RFC 7515) — подписанные данные из трёх частей, JWE (RFC 7516) — зашифрованные данные из пяти. JWT (RFC 7519) — набор утверждений, который переносится в одном из них, почти всегда в JWS, поэтому «JWT» обычно и означает подписанный токен.

Как узнать, когда истекает токен?

Посмотрите на Истекает (exp): декодер показывает дату в вашем часовом поясе и сколько осталось — «через 2 дня» или «3 часа назад». Токен без exp сам по себе не истекает, и для токенов доступа это риск.

Разместите этот калькулятор на своём сайте

Бесплатно для любого сайта или блога. Вставьте этот код туда, где должен появиться калькулятор:

Обновлено: 16 октября 2026 г.

Меню

Разделы

Финансовые калькуляторы15 калькуляторовКалькуляторы для бизнеса и покупок6 калькуляторовКалькуляторы здоровья7 калькуляторовМатематические и школьные калькуляторы9 калькуляторовКалькуляторы дат и времени5 калькуляторовСколько дней до праздника8 калькуляторовКалькуляторы и инструменты на каждый день14 калькуляторовИнструменты для PDF и фото13 калькуляторовПроверка микрофона и камеры, запись экрана6 калькуляторовИнструменты для разработчиков8 калькуляторов

CalcWorthy

О проектеКонтактыКонфиденциальностьУсловия использования

Язык

Язык
РусскийRussianEnglishEnglishالعربيةArabicবাংলাBanglaDeutschGermanEspañolSpanishفارسیPersianFrançaisFrenchעבריתHebrewहिन्दीHindiBahasa IndonesiaIndonesianItalianoItalian日本語Japanese한국어KoreanBahasa MelayuMalayNederlandsDutchPolskiPolishPortuguêsPortugueseไทยThaiTürkçeTurkishУкраїнськаUkrainianاردوUrduTiếng ViệtVietnamese简体中文Simplified Chinese