Генератор JWT
Создавайте и подписывайте HS256 JSON Web Tokens из payload и секрета полностью в браузере.
Похожие инструменты
Как использовать Генератор JWT
- 01
Отредактируйте payload как JSON-объект.
- 02
Введите ваш секрет HS256.
- 03
Сгенерируйте и скопируйте подписанный токен.
Подпись токенов в браузере
Генератор JWT, который создаёт и подписывает JSON Web Token из вашей полезной нагрузки и секрета полностью в вашем браузере с помощью Web Crypto API. Он дополняет декодер JWT, который изучает уже существующий токен.
Как устроен JWT
JWT состоит из трёх частей, разделённых точками: заголовка, полезной нагрузки с утверждениями и подписи, каждая в кодировке Base64url. Именно подпись делает токен надёжным: она доказывает, что полезная нагрузка не изменялась и что токен выпустил тот, у кого есть секрет.
HS256 и ваш секрет
Этот инструмент подписывает алгоритмом HS256, то есть HMAC на основе SHA-256, самым распространённым симметричным алгоритмом для JWT. Один и тот же секрет и подписывает, и проверяет токен, поэтому его нужно держать в тайне на сервере.
Для HS256 используйте длинный случайный секрет. Короткий или угадываемый секрет обесценивает весь токен, поскольку любой, кто его подберёт, сможет выпускать собственные действительные токены.
Закодировано, но не зашифровано
Важный момент про JWT: полезная нагрузка только закодирована, но не зашифрована. Любой, у кого есть токен, может прочитать его утверждения, декодировав Base64, поэтому никогда не помещайте в JWT пароли или конфиденциальные данные. Подпись предотвращает подмену, но не обеспечивает секретность.
Замечание о безопасности
Поскольку подпись выполняется локально, ваш секрет и полезная нагрузка никогда не покидают устройство. И всё же избегайте ввода реальных рабочих секретов на общем или публичном компьютере.
Часто задаваемые вопросы
Какой алгоритм используется?
HS256 (HMAC с SHA-256) -- наиболее распространённый симметричный алгоритм JWT, подписывается в браузере с Web Crypto API.
Отправляется ли секрет куда-либо?
Нет. Подпись происходит полностью в браузере, поэтому секрет и payload никогда не покидают устройство. Тем не менее избегайте реальных производственных секретов на общих машинах.
Можно ли также декодировать токен?
Да, используйте инструмент декодирования JWT для просмотра заголовка и payload существующего токена.