Про цей генератор
Цей пресет створює безпечне для URL високоентропійне значення для підпису HMAC JWT. Це секрет розробника, а не пароль користувача, і він ніколи не залишає цей браузер.
Цей пресет запускається в режимі url-safe і генерує 10 незалежних результатів за раз. Усі видимі налаштування залишаються регульованими, а згенеровані значення не надсилаються до PwdGen.
Коли використовувати
- Створення нового облікового запису для цього конкретного випадку використання
- Заміна повторно використаного або слабкого пароля
- Генерація значень локально перед безпечним зберіганням
Розмір алфавіту, ентропія та припущення щодо brute-force
Теоретична межа ентропії обчислюється як H = L × log2(A), де L — згенерована довжина, а A — кількість дозволених символів.
| Довжина | Алфавіт | Простір пошуку | Межа ентропії | Середній час при 10 млрд спроб/с |
|---|---|---|---|---|
| 64 | 64 | 6464 | 384.0 біт | 6.24e97 years |
Важливо: це математичні оцінки для рівномірно випадкових значень. Обов'язкові позиції, обмеження кількості, повторювані паролі, словникові шаблони, витік облікових даних та реальна вартість хешування паролів можуть суттєво змінити результат. Цифра не є гарантією безпеки.
Рекомендації щодо розгортання ключа підпису JWT
Для HS256 використовуйте щонайменше 256 біт рівномірно випадкового ключового матеріалу. HS384 та HS512 використовують різні розміри виходу SHA-2, але вибір довшого алгоритму не виправляє слабку верифікацію, витік ключів або помилки змішування алгоритмів.
Еквівалентна генерація в терміналі та Node.js
openssl rand -hex 32 import { randomBytes } from 'node:crypto';
const jwtSecret = randomBytes(32).toString('hex'); Зберігання та ротація
- Не зберігайте ключі підпису в Git, фронтенд-бандлах, URL, аналітиці та журналах додатків.
- Використовуйте менеджер секретів, Vault, KMS або захищену змінну середовища.
- Використовуйте контрольовану стратегію kid при ротації ключів.
- Обирайте RS256 або ES256, коли верифікатори повинні мати лише відкритий ключ.
Hex, Base64 та Base64URL — це кодування, а не шифрування. Безпека забезпечується випадковими байтами та захистом ключа підпису.
Як безпечно використовувати результат
- Перевірте поточні правила паролів у цільовій системі
- Використовуйте унікальний результат і ввімкніть MFA, де це можливо
- Зберігайте коди відновлення окремо від пароля
Метод генерації та конфіденційність
Пресет використовує браузерний Web Crypto API для випадкового вибору. Перегенерування, зміна налаштувань, вибір та копіювання результатів не надсилають згенеровані облікові дані до PwdGen. Оцінювач часу злому пароля також працює локально і є оцінкою, а не гарантією.
Генератор секрету JWT FAQ
Якою має бути довжина секрету HS256 JWT?
Використовуйте щонайменше 256 біт рівномірно випадкового ключового матеріалу для HS256. Ця сторінка генерує 64-символьне значення з алфавіту Base64URL, що забезпечує більший теоретичний простір пошуку при рівномірній генерації.
Чи слід зберігати секрет JWT у змінній середовища?
Змінна середовища безпечніша, ніж вихідний код, але все ще може витікати через перевірку процесів, журнали або інструменти розгортання. Для виробничих систем краще використовувати кероване сховище секретів або KMS.
Коли слід використовувати RS256 або ES256 замість HMAC?
Використовуйте асиметричне підписування, коли верифікатори не повинні мати приватний ключ підпису або коли кілька служб потребують перевірки відкритим ключем. Захищайте приватний ключ і змінюйте ключі за допомогою контрольованої стратегії ідентифікатора ключа.