PassFront
  1. PassFront
  2. База знаний
  3. DOM и браузер

В чем разница между токеном и JWT-токеном?

DOM и браузер

Токен — это общее понятие (любая строка-удостоверение доступа), а JWT — конкретный формат самодостаточного подписанного токена. JWT — один из видов токенов.

Токен (общее понятие)

Строка, которую клиент предъявляет для доступа. Виды:

  • Opaque token — непрозрачная случайная строка; сервер хранит связанные с ней данные и проверяет по своей базе.
token = "a1b2c3d4..." → сервер ищет в БД → находит пользователя
  • JWT — самодостаточный токен с данными внутри.

JWT (JSON Web Token)

Конкретный формат: header.payload.signature (Base64URL), подписанный:

eyJhbGc... . eyJzdWIi... . SflKxw...
  • Данные (claims) внутри токена.
  • Сервер проверяет подпись, не обращаясь к БД (stateless).
  • Payload читаем (не шифрование) — секреты не кладут.

Различия

  • JWT — самодостаточный, stateless (сервер не хранит), содержит данные, проверяется подписью.
  • Opaque token — просто идентификатор, stateful (сервер хранит данные), проверяется по базе.
  • Opaque token — Данные: на сервере; Проверка: запрос в БД; Состояние: stateful; Отзыв: легко
  • JWT — Данные: в токене; Проверка: подпись; Состояние: stateless; Отзыв: сложнее

Коротко для собеседования

Токен — общее понятие (любая строка доступа); JWT — конкретный формат самодостаточного подписанного токена (header.payload.signature) с данными внутри и stateless-проверкой по подписи. Opaque token — просто идентификатор, данные на сервере (stateful), легко отзывается. JWT — один из видов токенов.

Другие вопросы раздела