Як користуватися
- Виберіть кількість випадкових байтів у кожному токені. 32 байти (256 бітів) — надійне значення за замовчуванням для секретів.
- Виберіть кодування відповідно до місця використання токена й за бажанням додайте префікс, наприклад “myapp_live_”.
- Укажіть потрібну кількість токенів, а потім скопіюйте один із них або натисніть «Копіювати всі». Натисніть «Згенерувати ще раз», щоб створити новий набір.
Як це працює
Токени створюються з випадкових байтів, згенерованих за допомогою crypto.getRandomValues — криптографічно стійкого генератора, вбудованого у ваш браузер і операційну систему. Math.random ніколи не використовується.
Для hex, Base64 і Base64URL інструмент бере рівно стільки байтів, скільки ви вибрали, і кодує їх. Тому токен із 32 байтів завжди має 256 біт ентропії: 64 символи hex, 44 символи Base64 (зокрема один символ = для доповнення) або 43 символи Base64URL. Base64URL замінює + і / на - і _, а також прибирає символи доповнення, тож цей формат можна використовувати в URL, іменах файлів і HTTP-заголовках без екранування.
В алфавітно-цифрових токенах використовуються лише A–Z, a–z і 0–9 — так можна уникнути символів, які деякі системи сприймають особливим чином. Кожен символ містить приблизно 5,95 біта, тому інструмент генерує достатньо символів, щоб досягти принаймні вибраної кількості бітів (43 символи для 256 бітів). Символи вибираються методом вибірки з відхиленням, щоб усі 62 символи мали однакову ймовірність.
Префікс додається як звичайний текст і не збільшує ентропію. Префікси на зразок «sk_live_» полегшують розпізнавання ключів, що витекли, і їх пошук сканерами секретів. Зберігайте секрети в менеджері паролів або сховищі секретів, а не у вихідному коді.
Приклади
Секрет для підпису вебхуків
32 байти у форматі hex дають секрет довжиною 64 символи з ентропією 256 біт. Його можна додати до конфігурації і відправника, і отримувача для підписів HMAC-SHA-256.
Ключ API з упізнаваним префіксом
Виберіть 24 байти, формат Alphanumeric і префікс «acme_live_». Кожен ключ матиме вигляд acme_live_, за яким ідуть 33 літери й цифри, міститиме щонайменше 192 біти ентропії та легко розпізнаватиметься в журналах або сканері секретів.
Токен скидання пароля для URL
16 байтів у форматі Base64URL дають токен із 22 символів (128 біт), який можна безпосередньо вставити в посилання, наприклад /reset?token=…, без кодування відсотками.
Поширені запитання
Скільки байтів має містити секрет?
128 біт (16 байтів) достатньо, щоб унеможливити вгадування токенів на зразок ідентифікаторів сеансу. Для секретів із тривалим строком дії, як-от ключів підпису, зазвичай рекомендують 256 біт (32 байти) — це відповідає розміру вихідних даних SHA-256.
Яке кодування вибрати?
Для однакової кількості байтів ентропія однакова — відрізняється лише текстове подання. Використовуйте hex для максимальної сумісності, Base64URL для коротких токенів у URL і заголовках, а алфавітно-цифровий формат — якщо система не приймає розділових знаків.
Токени зберігаються чи записуються в журнали?
Ні. Токени генеруються в цій вкладці браузера й зникають, коли ви залишаєте сторінку. Вони не надсилаються на сервер і не потрапляють до аналітики.
Чи можна використовувати їх як паролі?
Так, вони достатньо випадкові, але сайти часто вимагають поєднання різних типів символів. У генераторі паролів можна налаштувати ці правила.
Конфіденційність
Токени генеруються у вашому браузері за допомогою crypto.getRandomValues. Вони не завантажуються, не зберігаються, не записуються в журнали й не надсилаються до аналітики; фіксується лише анонімна подія про використання інструмента.