JWT Tools — декодирование, проверка и подпись
Декодируйте JWT, проверяйте подписи HS, RS и ES с помощью секрета или открытого ключа PEM и подписывайте новые токены HS — полностью в вашем браузере.
JWT Tools — декодирование, проверка и подпись — Универсальный набор инструментов для JSON Web Token с тремя режимами — декодирование, проверка и подпись. Декодирование красиво форматирует заголовок и полезную нагрузку токена, проверка сверяет подпись с помощью секрета HMAC (HS256/384/512) или открытого ключа PEM (RS256/384/512, ES256/384/512), а подпись создаёт новый токен с подписью HS из вашего заголовка, полезной нагрузки и секрета. Каждая операция выполняется полностью на стороне клиента через встроенный в браузер Web Crypto API, поэтому токены, секреты и ключи никогда не покидают ваше устройство.
Что такое JWT Tools — декодирование, проверка и подпись?
JWT Tools — это бесплатная универсальная утилита для JSON Web Token, объединяющая декодер, проверку подписи и подписчик HS в одном месте. В режиме декодирования она декодирует токен header.payload.signature из base64url и красиво выводит заголовок и полезную нагрузку в виде форматированного JSON. В режиме проверки она считывает alg из заголовка токена и сверяет подпись с помощью Web Crypto API: общий секрет HMAC для HS256, HS384 и HS512 или открытый ключ в формате PEM для RS256/RS384/RS512 (RSASSA-PKCS1-v1_5) и ES256/ES384/ES512 (ECDSA). В режиме подписи она создаёт и подписывает с помощью HMAC совершенно новый токен из заголовка JSON, полезной нагрузки JSON, выбранного алгоритма HS и секрета. Она создана для backend- и frontend-инженеров, QA-тестировщиков и интеграторов API, которые отлаживают аутентификацию, сессии OAuth/OIDC и срок действия токенов, не вставляя секреты в удалённый сервис.
Как пользоваться JWT Tools — декодирование, проверка и подпись
- Выберите режим вверху: декодирование, проверка или подпись.
- Декодирование: вставьте JWT (header.payload.signature) в поле токена и прочитайте красиво отформатированные заголовок и полезную нагрузку ниже — проверка подписи здесь не выполняется.
- Проверка: вставьте токен, затем вставьте секрет HMAC (для алгоритмов HS) или открытый ключ PEM (для RS/ES) в поле ключа; инструмент считывает alg из заголовка и показывает зелёный результат «действительна» или красный «недействительна».
- Подпись: введите заголовок JSON и полезную нагрузку JSON, выберите HS256, HS384 или HS512, введите свой секрет и скопируйте только что подписанный токен, который появится.
- Используйте кнопку «Копировать» для любого вывода или «Очистить», чтобы сбросить ввод декодирования.
Примеры
Декодировать токен
Ввод
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0In0.sig
Вывод
Header:
{
"alg": "HS256",
"typ": "JWT"
}
Payload:
{
"sub": "1234"
}Проверить токен HS256
Ввод
token: eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiIxIn0.<sig> secret: your-256-bit-secret
Вывод
valid (HS256)
Подписать новый токен HS256
Ввод
header: {}
payload: { "sub": "1234567890", "name": "Jane Doe" }
secret: your-256-bit-secretВывод
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkphbmUgRG9lIn0.<signature>
Часто задаваемые вопросы
- Загружаются ли мои токены, секреты и ключи куда-либо?
- Нет. Каждый режим работает полностью на стороне клиента в вашем браузере, используя встроенный Web Crypto API (crypto.subtle) для HMAC и проверки подписи, а также base64url и JSON в JavaScript. Ничто — ни токен, ни секрет, ни ключ PEM — никогда не отправляется на какой-либо сервер, что делает безопасной работу с продакшен-учётными данными.
- Какие алгоритмы он может проверять?
- Проверка поддерживает HS256, HS384 и HS512 с общим секретом HMAC, а также RS256/RS384/RS512 (RSASSA-PKCS1-v1_5) и ES256/ES384/ES512 (ECDSA) с открытым ключом в формате PEM. Он автоматически считывает поле alg из заголовка токена, поэтому вам достаточно предоставить соответствующий секрет или открытый ключ.
- Какими алгоритмами он может подписывать?
- Режим подписи создаёт только токены с подписью HMAC — HS256, HS384 или HS512 — из вашего заголовка JSON, полезной нагрузки JSON и секрета. Для подписи RSA и ECDSA нужен закрытый ключ, и это выходит за рамки данного инструмента; для RS/ES вы по-прежнему можете выполнить проверку с соответствующим открытым ключом в режиме проверки.
- Проверяет ли подпись режим декодирования?
- Нет. Декодирование лишь декодирует из base64url и красиво выводит заголовок и полезную нагрузку — оно никогда не проверяет подпись. Переключитесь в режим проверки и укажите секрет или открытый ключ, чтобы подтвердить подлинность токена, и никогда не доверяйте декодированной полезной нагрузке, пока её подпись не проверена.
- Почему проверка сообщает о недействительности или ошибке?
- «Недействительна» означает, что подпись не совпала с предоставленным вами секретом или ключом. «Ошибка», напротив, означает, что ввод не удалось обработать — например, у токена отсутствует сегмент подписи, alg не поддерживается или не удалось разобрать открытый ключ PEM. Убедитесь, что вы вставили полный токен и правильный ключ для его алгоритма.
Похожие инструменты
Шифрование текста AES (AES-GCM + PBKDF2)
Шифруйте и расшифровывайте текст с помощью AES-256-GCM, используя ключ, полученный из парольной фразы (PBKDF2 SHA-256, случайная соль), полностью в вашем браузере и без загрузок.
Хеш Argon2 и scrypt
Хешируйте пароль с помощью Argon2id или scrypt и проверяйте хеш Argon2 на соответствие паролю — полностью в вашем браузере.
Генератор и проверщик bcrypt-хешей
Создавайте bcrypt-хеш пароля из открытого текста с выбранным фактором стоимости или проверяйте пароль по существующему bcrypt-хешу — полностью в вашем браузере.
Генератор мнемонических фраз BIP39
Сгенерируйте случайную фразу восстановления BIP39 из 12–24 слов на нескольких языках или преобразуйте существующую мнемоническую фразу обратно в её исходную энтропию — полностью в вашем браузере.