Перейти к содержанию

Генератор JWT

Создавайте и подписывайте JSON Web Token с помощью HMAC прямо в вашем браузере.

Входные данные
Выходные данные

Генератор JWT

Вставьте полезную нагрузку JSON, и этот инструмент создаст полный JSON Web Token: он собирает заголовок на основе выбранного алгоритма, кодирует заголовок и полезную нагрузку как Base64URL и подписывает результат с помощью HMAC. Используйте его для создания тестовых токенов для API, отладки потока аутентификации или для просмотра того, как выглядит заданный набор утверждений после кодирования.

Выберите HS256, HS384 или HS512 и введите секретный ключ, с помощью которого должен быть подписан токен — тот же ключ, который ваш сервер будет использовать для его проверки. Переключатели быстрого заполнения добавляют общие временные утверждения без ввода вручную: «iat» отмечает токен текущим временем, «истекает через» устанавливает «exp» на текущее время плюс выбранная продолжительность (от 15 минут до 30 дней или вообще нет), а «nbf» отмечает токен как действительный не раньше. Отдельные поля устанавливают «sub» и «iss», когда вам нужно утверждение субъекта или издателя. Утверждение быстрого заполнения всегда переопределяет утверждение с тем же именем в вашем JSON, поэтому вы можете начать с шаблона полезной нагрузки и позволить переключателям заполнить остальное.

Полезная нагрузка может быть красиво отформатирована или компактна — красивое форматирование только изменяет способ встраивания JSON, но не то, что оно декодирует. После подписания инструмент декодирует токен, который он только что создал, и независимо перепроверяет подпись с помощью Web Crypto API браузера, поэтому строка промежуточных итогов подтверждает, что токен действительно проверяется, а не просто предполагает это. Очень большие полезные нагрузки обрабатываются до предела выходных данных 10 МБ, и один и тот же секретный ключ и полезная нагрузка всегда производят один и тот же токен — ничто здесь не зависит от случайности.

Все работает локально в вашем браузере: полезная нагрузка, секретный ключ и сама подпись никогда не покидают ваше устройство и не касаются сервера. Скопируйте токен, загрузите его как файл .txt или отправьте непосредственно декодеру JWT для проверки того, что вы только что создали.

FAQ

Какие алгоритмы поддерживаются?
HS256, HS384 и HS512 — подпись HMAC с SHA-256, SHA-384 или SHA-512. Асимметричные алгоритмы, такие как RS256 или ES256, требуют пары приватного ключа и здесь не поддерживаются.
Что происходит, если я оставляю полезную нагрузку пустой?
Пустая полезная нагрузка рассматривается как пустой объект JSON. В сочетании с переключателями быстрого заполнения вы все еще можете создать токен, который содержит только утверждения, такие как «iat» и «exp».
Перезаписывают ли утверждения быстрого заполнения то, что я ввел?
Да, по дизайну: «iat», «exp», «nbf», «sub» и «iss» из переключателей и полей всегда имеют приоритет над утверждением с тем же именем уже в вашей полезной нагрузке JSON.
Как проверяется подпись?
После подписания инструмент декодирует токен, который он только что произвел, и перепроверяет подпись независимо с помощью Web Crypto API браузера, а затем сообщает результат в строке промежуточных итогов.
Мой секретный ключ или полезная нагрузка загружаются куда-нибудь?
Нет. Весь токен создается и подписывается в вашем браузере с помощью Web Crypto API — секретный ключ, полезная нагрузка и полученный токен никогда не покидают ваше устройство, и секретный ключ никогда не сохраняется в локальное хранилище.