Генератор JWT
Создавайте и подписывайте JSON Web Token в браузере с помощью HS256, RS256, ES256, EdDSA и других алгоритмов. Редактируйте заголовок и полезную нагрузку, задавайте срок действия, используйте собственный секрет или закрытый ключ и получайте открытый ключ в форматах PEM и JWK.
Ввод
Вывод
Документация
Описание инструмента
Этот инструмент создаёт и подписывает JWT прямо в браузере. Выберите алгоритм, отредактируйте заголовок и полезную нагрузку в формате JSON — и подписанный токен сразу появится на экране. Инструмент удобен для тестирования API, проверки новой настройки аутентификации или создания токена для локального окружения. Всё происходит в браузере с использованием Web Crypto API, а ваши секреты и ключи никуда не отправляются.
При открытии инструмента создаётся случайный секрет, а при первом выборе алгоритма, которому требуется ключ, автоматически создаётся новая пара ключей. Благодаря этому вы получаете рабочий токен без предварительной подготовки. Вставьте собственный секрет или закрытый ключ, чтобы создавать токены, которые принимает ваш сервер.
Возможности
- Подписывает данные с помощью HS256, HS384, HS512, RS256, RS384, RS512, PS256, PS384, PS512, ES256, ES384, ES512 и EdDSA (Ed25519).
- Принимает секрет HMAC в виде текста, Base64 или шестнадцатеричной строки и предупреждает, если его длина меньше допустимой согласно RFC 7518 — многие библиотеки отказываются принимать такие секреты.
- Читает закрытые ключи в формате PKCS #8 PEM (
BEGIN PRIVATE KEY), PKCS #1 PEM (BEGIN RSA PRIVATE KEY), SEC 1 PEM (BEGIN EC PRIVATE KEY) или JWK. - Показывает открытый ключ в формате PEM и JWK с параметрами
kid,useиalg, готовый для добавления в JWKS. - При подписывании токена устанавливает
exp,iat,nbfи случайныйjti, а также показывает время подписания и истечения срока действия в вашем часовом поясе. - Объясняет, что именно не так с ключом: вместо закрытого ключа указан открытый, выбран ключ неправильного типа или кривой, используется RSA-ключ длиной менее 2048 бит либо ключ защищён паролем.
- Хранит отдельный ключ для каждого типа ключей, поэтому вы можете переключаться между RS256 и ES256, не теряя вставленный ключ.
- Создаёт неподписанные токены с
alg, установленным вnone, чтобы проверить, отклоняет ли их ваш сервер.
Примеры
При использовании HS256, заголовка {"typ": "JWT"}, полезной нагрузки {"sub": "1234567890", "name": "Джейн Доу"} и значении «Срок действия» — 1 час — подписанная полезная нагрузка будет выглядеть так:
{
"sub": "1234567890",
"name": "Джейн Доу",
"iat": 1790000000,
"exp": 1790003600
}Советы
Токен подписывается заново при каждом изменении, поэтому iat и exp всегда отсчитываются от текущего времени. Используйте кнопку под токеном, чтобы подписать его повторно, ничего не изменяя.