Перейти до вмісту

Генератор 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 — секретний ключ, корисне навантаження та отриманий токен ніколи не покидають ваш пристрій, і секретний ключ ніколи не зберігається в локальне сховище.