Декодер и отладчик JWT
Декодируйте JWT-токен, чтобы изучить его заголовок и payload, и автоматически проверьте, не истёк ли он (exp) и не является ли ещё неактивным (nbf). Декодирование выполняется целиком в вашем браузере — удобно для отладки сессии, при этом токен никогда не отправляется на сервер.
⚠ Внимание: подпись НЕ проверяется. Этот инструмент декодирует содержимое токена и проверяет только даты exp/nbf, указанные в payload. Он ни в коем случае не доказывает, что токен подлинный и не был изменён: криптографическую проверку подписи всегда нужно выполнять на стороне сервера с помощью секретного или открытого ключа издателя.
Как это работает
JWT состоит из трёх частей, разделённых точками: header.payload.signature. Заголовок (header) и полезная нагрузка (payload) закодированы в Base64URL — не зашифрованы, — поэтому любой может прочитать их без ключа. Помимо простого декодирования, этот инструмент считывает стандартные claims exp (срок действия) и nbf («not before» — не ранее) и сравнивает их с текущим временем вашего устройства, чтобы сразу показать, принял бы токен или отклонил сервер, соблюдающий стандарт JWT, только по этому временному критерию.
Что именно означают exp и nbf?
exp (expiration) — это Unix-метка времени, после которой токен считается просроченным. nbf («not before») — это Unix-метка времени, раньше которой токен ещё нельзя принимать; она полезна для токенов, которые должны стать активными позже. Оба поля необязательны: если их нет, сам токен не накладывает никаких временных ограничений такого рода.
Здесь токен действителен, почему же мой API всё равно его отклоняет?
Потому что этот инструмент проверяет только структуру и заявленные даты, но никогда не подпись. API может отклонить токен и по другим причинам: недействительная подпись, неверный издатель (iss) или аудитория (aud), токен отозван на стороне сервера или отсутствуют бизнес-claims. Ни одну из этих проверок нельзя выполнить без доступа к секретному или открытому ключу издателя, а это всегда операция на стороне сервера.
Конфиденциальность: декодирование и проверка дат выполняются целиком в вашем браузере через WebAssembly — содержимое токена, даже конфиденциальное, никогда не покидает ваше устройство.