Security

Password Generator

Генерує сильні паролі з налаштовуваними правилами.

Generate a strong password All randomness happens in your browser — passwords never leave your device.
Entropy
Strength Very weak Weak Reasonable Strong Very strong
Crack time Instant Seconds Minutes Hours Days Years Millennia Millions of years Eons

Passwords are generated locally via crypto.getRandomValues — nothing is sent to the server.

Про цей інструмент

Сильний пароль — найдешевший security-контроль, який можна застосувати. Цей генератор будує випадкові паролі повністю у вашому браузері через crypto.getRandomValues() — криптографічно безпечний RNG, який браузери надають саме для цього. Виставте довжину (8–64), оберіть класи символів (uppercase, lowercase, digits, symbols), виключіть неоднозначні символи (0/O, 1/l/I), якщо плануєте читати вголос, і згенеруйте скільки завгодно кандидатів.

Поряд із випадковими паролями ми пропонуємо два варіанти: passphrases (4–8 словникових слів, з'єднаних роздільником — знаменитий стиль «correcthorsebatterystaple») і PINs (лише цифри, 4–10 символів, корисні для device unlock-кодів). Кожне згенероване значення йде з оцінкою сили на основі Shannon entropy: 60+ біт — комфортно для більшості акаунтів, 80+ біт — параноїдально. Нічого не покидає ваш пристрій — немає мережевого виклику, немає логування, немає server-side кроку генерації.

Коли використовувати цей інструмент

  • Створення акаунту. Генеруйте унікальний 20-символьний пароль на сервіс, зберігайте в password manager.
  • API-токени та секрети. Швидко продукуйте high-entropy рядки для .env-файлів, signing keys і admin-credentials.
  • Ключі Wi-Fi. 16-символьний WPA2 PSK з mixed classes — надійно; довший — краще і легко виставляється один раз.
  • Запам'ятовувані паролі для рідковживаних акаунтів. Використовуйте passphrase-режим для тієї жменьки паролів, які ви реально мусите набирати вручну.

Що означає «сила»

Сила повідомляється в бітах entropy — log2(possible-passwords-of-this-shape). 12-символьний пароль, узятий рівномірно з 94 printable ASCII-символів, має 12 × log2(94) ≈ 79 біт. При сучасних швидкостях злому (~10^12 хешів/сек для unsalted SHA-256) 80 біт витримують будь-яку offline-атаку до кінця віку Всесвіту. Слабка ланка майже ніколи не довжина пароля понад 60 біт — це reuse, фішинг і breach-бази. Поєднуйте сильний генератор із password manager і 2FA.

Часті запитання

Чи рандомність справді випадкова?

Так — ми використовуємо window.crypto.getRandomValues(), що бекдапиться CSPRNG операційної системи (наприклад, /dev/urandom на Linux, CryptGenRandom на Windows). Це те саме джерело, з якого TLS генерує session-keys; воно криптографічно безпечне і нерозрізняється від справжньої випадковості для всіх практичних цілей. Старі методи на кшталт Math.random() ТУТ НЕ використовуються — вони детерміновані і не підходять для безпеки.

Якої довжини має бути мій пароль?

Для більшості акаунтів 16 символів із mixed classes — досить (~95 біт entropy — uncrackable offline). Для high-value-акаунтів (email, банк, master password manager) тягніть до 20+ символів. Для passphrases (4–6 словникових слів) хочеться щонайменше 5 слів зі словника на 7776 слів = ~65 біт. PIN-only-creds мають доходити до 8+ цифр, якщо використовуються поза hardware-locked пристроями.

Що робить «exclude ambiguous characters»?

Прибирає візуально-сплутувані символи з пула кандидатів: 0/O/o, 1/l/I, іноді 2/Z. Трейд-офф — невелика втрата entropy (~3% на виключений символ) в обмін на значно менше «набрав неправильно», коли пароль читається з паперу або екрана. Рекомендовано для друкованих Wi-Fi-ключів і one-time setup-токенів; непотрібне для записів password-manager-only.

Чи безпечніше це за генератор у моєму password manager?

Ні — вони еквівалентні. 1Password, Bitwarden, LastPass і KeePass усі використовують той самий CSPRNG браузера/OS з тими ж опціями класів символів. Використовуйте те, що пасує вашому workflow. Наш генератор існує для випадків, коли треба one-off пароль поза менеджером (CLI setup, env vars, паперові нотатки) і хочеться швидкий web UI, у який не треба логінитись.