🛠 Все
🔐

JWT Decoder и Generator — работа с JSON Web Token онлайн

Декодируй header, payload и подпись любого JWT. Проверь алгоритм, дату истечения, issuer. Генерируй JWT с HS256/HS384/HS512. Всё работает в браузере — токены и секреты не уходят на сервер.

Что такое JWT

JWT (JSON Web Token) — стандарт безопасной передачи информации между сторонами как JSON-объекта. Это компактный, URL-безопасный токен, состоящий из трёх частей через точку: header.payload.signature. Используется массово в современных API для аутентификации, в постбэках партнёрских сетей, в OAuth2 и OpenID Connect.

Когда нужен decoder

  • Отладка постбэков партнёрки — посмотреть, какие click_id, payout, status пришли в JWT.
  • Проверка истечения токена — поле exp в Unix-timestamp, инструмент показывает читаемую дату.
  • Аудит OAuth-токенов — какие scope, кто issuer, валиден ли подписи.
  • Reverse-engineering чужого API — понять, что сервер ожидает в payload.

Когда нужен generator

  • Тестирование своего API — собрать токен с нужными claims и проверить как сервер его обработает.
  • Симуляция постбэка — сгенерировать тестовый JWT для отладки своего endpoint.
  • Учебные цели — понять, как именно формируется подпись HS256.

Безопасность

Всё кодирование, декодирование и проверка подписи выполняется в браузере на JavaScript (Web Crypto API для HS*). Токены и секреты никогда не отправляются на сервер aff.top. Тем не менее не вставляй production-секреты в любые онлайн-инструменты — храни их в защищённых системах (Vault, AWS KMS).

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

Что такое JWT и как он устроен?
JWT (JSON Web Token) — это компактный формат токена для аутентификации и обмена данными. Состоит из трёх частей через точку: header (алгоритм и тип), payload (данные — claims), signature (подпись). Каждая часть закодирована в base64url. Пример: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxIn0.x4D1Lqkz3w...
Безопасно ли вставлять JWT в этот инструмент?
Да. Декодирование и генерация выполняются полностью в браузере на JavaScript. На сервер aff.top токен и секрет не отправляются. Но всё равно: никогда не вставляй production-токены и production-секреты в любые онлайн-инструменты — для критичных систем используй CLI-утилиты или библиотеки.
Какие алгоритмы поддерживаются?
Декодирование — любой JWT (alg-поле читается из заголовка). Проверка подписи и генерация — HS256, HS384, HS512 (симметричные с общим секретом). Для RS256/ES256 нужен публичный/приватный ключ — для них показываем декодированные данные, но подпись не верифицируем (используй openssl или библиотеки на бэке).
Зачем JWT decoder арбитражнику?
Для отладки постбэков и S2S-интеграций. Многие партнёрские сети шлют JWT в постбэках для защиты от подделки. Декодер показывает payload (поля типа click_id, payout, status, exp), что помогает понять что именно прислал партнёр и не истёк ли токен.
Что показывает payload?
Стандартные claims: iss (issuer — кто выдал), sub (subject — кому), aud (audience), exp (когда истекает, Unix timestamp), iat (когда выдан), nbf (не действует до), jti (уникальный ID). Плюс кастомные поля от конкретного сервиса. Мы показываем человекочитаемые даты для exp/iat/nbf.
JWT не валидируется — что значит "invalid signature"?
Либо секрет неправильный, либо токен был изменён, либо алгоритм не совпадает. Проверь: 1) правильный ли секрет; 2) совпадает ли alg в header с тем, что используется для проверки; 3) не было ли base64-декодирования секрета (HS256 принимает секрет как raw-bytes).
Можно ли расшифровать JWT без секрета?
Decode (прочитать header и payload) — да, JWT не шифрует данные, только подписывает. Verify (проверить подпись и понять что токен валидный) — нет, для этого нужен секрет (HS*) или публичный ключ (RS*/ES*). Поэтому никогда не клади чувствительные данные в JWT — это конверт, а не сейф.