Перейти к основному содержимому
FreeOnlineTools Go
Русский
Как

Как декодировать JWT-токены и безопасно проверять claims

Автор: FreeOnlineTools Team · Обновлено 2026-09-02

Быстрый ответ

Чтобы декодировать JWT: вставьте токен в JWT Decoder и header и payload появятся как форматированный JSON. Инструмент декодирует Base64URL-части локально —токен не покидает браузер. Помните: декодирование только показывает содержимое; не проверяет signature.

Введение

JWT (JSON Web Token) — компактный, URL-safe формат токена для аутентификации и обмена информацией. JWT имеет три части, разделённые точками: header.payload.signature. Header указывает алгоритм, payload содержит claims (user ID, roles, expiration), а signature доказывает, что токен не был изменён. Декодирование позволяет проверить содержимое для отладки —но не проверяет подлинность.

Шаг за шагом

  1. Откройте инструмент декодера JWT.

    Перейдите на страницу инструмента декодера JWT. Инструмент принимает любую строку JWT (три части в кодировке Base64URL, разделенные точками).

  2. Вставьте свой токен JWT

    Вставьте JWT в поле ввода. Типичный JWT выглядит так: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ1c2VyMSJ9.signature. Инструмент автоматически определяет три части.

  3. Просмотрите декодированный заголовок

    Инструмент Base64URL декодирует первую часть и отображает ее как JSON. Заголовок обычно содержит «alg» (алгоритм, например HS256) и «typ» (тип, обычно «JWT»).

  4. Просмотрите декодированные полезные данные (заявки)

    Инструмент декодирует вторую часть и отображает претензии в формате JSON. Общие претензии включают «sub» (идентификатор субъекта/пользователя), «iat» (дата выдачи), «exp» (срок действия) и «role» (роль пользователя).

  5. Проверьте подпись (третья часть)

    Инструмент показывает часть подписи. Примечание: декодирование НЕ проверяет подпись. Для проверки вам понадобится ключ подписи и библиотека проверки. Никогда не доверяйте заявлениям JWT без проверки подписи на стороне сервера.

Примеры

Раскодируйте простой JWT

Вход: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJ1c2VyMSIsIm5hbWUiOiJBbGljZSIsImlhdCI6MTY5MzUyNjQwMH0.signature

Выход: Header: {"alg":"HS256","typ":"JWT"} Payload: {"sub":"user1","name":"Alice","iat":1693526400}

JWT с заявлением об истечении срока действия

Вход: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhZG1pbiIsImV4cCI6MTY5MzYxMjgwMH0.sig

Выход: Header: {"alg":"HS256"} Payload: {"sub":"admin","exp":1693612800}

Распространенные проблемы

  • Путаница декодирования с проверкой: при декодировании JWT только считывается его содержимое; это НЕ доказывает подлинность токена. Всегда проверяйте подпись на стороне сервера с помощью ключа подписи.
  • Доверие токенам с истекшим сроком действия — проверьте утверждение «exp» и отклоните токены с истекшим сроком действия. Значение «exp» — это временная метка Unix в секундах.
  • Base64 против Base64URL — JWT использует кодировку Base64URL (без заполнения, - и _ вместо + и /). Стандартный декодер Base64 не работает на деталях JWT.
  • Конфиденциальные данные в полезных данных — полезные данные JWT доступны для чтения любому, у кого есть токен. Не храните в полезных данных пароли, номера кредитных карт и другие секреты.

Советы

  • Всегда проверяйте подпись JWT на стороне сервера, прежде чем доверять каким-либо утверждениям — декодирование само по себе не является аутентификацией.
  • Проверьте утверждения «exp» (срок действия) и «nbf» (не раньше), чтобы убедиться, что токен действителен для текущего времени.
  • Используйте токены с коротким сроком действия (15–60 минут) с токенами обновления для длительных сеансов — минимизирует ущерб в случае утечки токена.
  • Используйте наш декодер JWT для безопасной локальной отладки — ваш токен никогда не покидает ваш браузер.

Сопутствующие инструменты

Связанные руководства

Ссылки