Генератор рандомного пароля
Более 80% взломов аккаунтов происходит через скомпрометированные пароли. Слабый пароль – «123456», имя питомца, дата рождения – подбирается за секунды. Рандомный пароль, сгенерированный криптографически стойким алгоритмом, делает атаку перебором практически невозможной.
Как работает генератор рандомного пароля
Калькулятор выше создаёт пароль на основе криптографически стойкого генератора псевдослучайных чисел (CSPRNG) – источника случайности, который использует энтропию операционной системы. Это тот же механизм, что задействован для TLS-ключей и сессионных токенов.
Параметры генерации:
- Длина – количество символов в пароле (от 4 до 128)
- Строчные буквы – a–z (26 символов)
- Заглавные буквы – A–Z (26 символов)
- Цифры – 0–9 (10 символов)
- Символы – !@#$%^&* и другие (30 символов)
Размер алфавита напрямую определяет стойкость. При включении всех категорий пул составляет 92 символа, только строчных – 26.
Что такое энтропия пароля и зачем она нужна?
Энтропия – единственный объективный показатель стойкости пароля. Она измеряется в битах и показывает, сколько равновероятных комбинаций нужно перебрать для подбора.
Формула расчёта:
H = L × log₂(N)
Где L – длина пароля, N – размер алфавита.
Примеры:
| Пароль | Длина | Алфавит | Энтропия |
|---|---|---|---|
abcdef | 6 | 26 | 28 бит |
aB3$fK9! | 8 | 92 | 52 бит |
kX7#mP2$vL4@nQ8! | 16 | 92 | 104 бит |
correct horse battery staple | 4 слова | 1296 | 41 бит |
Шестисимвольный пароль из строчных букв – всего 28 бит. Шестнадцатисимвольный из полного алфавита – 104 бита. Разница – в 2⁷⁶ раз больше комбинаций.
Сколько бит энтропии нужно для надёжной защиты?
Пороги стойкости, основанные на возможностях современного оборудования NIST SP 800-63B:
- < 28 бит – взламывается мгновенно
- 28–36 бит – секунды или минуты
- 36–60 бит – часы или дни при офлайн-атаке
- 60–80 бит – годы на текущем оборудовании
- 80–128 бит – за пределами возможностей на десятилетия
- 128+ бит – практически не взламываемо при обозримых технологиях
Для повседневных аккаунтов достаточно 60–80 бит. Для критичных (почта, менеджер паролей, криптокошельки) – 100+ бит.
Длина пароля vs сложность: что важнее?
Оба параметра влияют на энтропию мультипликативно, но длина даёт больший прирост на каждый добавленный символ.
Сравним два подхода:
- 8 символов, полный алфавит (92): 8 × log₂(92) = 52 бита
- 16 символов, только строчные (26): 16 × log₂(26) = 75 бит
Длинный пароль из простого алфавита оказался стойче, чем короткий из сложного. Именно поэтому рекомендации NIST с 2017 года отказались от обязательных правил композиции (обязательная цифра, символ) в пользу увеличения длины.
Удаление похожих символов (il1Lo0O) сокращает алфавит с 92 до 85 символов – потеря ~0,14 бита на каждый символ. Для 16-символьного пароля это 2,2 бита, что незначительно, но улучшает читаемость.
Типы рандомных паролей
Полностью случайный
Максимальная энтропия на символ. Состоит из бессмысленной последовательности букв, цифр и символов: kX7#mP2$vL4@nQ8!. Лучший выбор для хранения в менеджере паролей – не нужно запоминать, только копировать.
Произносимый
Чередование согласных и гласных: kevutofipa. Удобнее запомнить, но энтропия ниже – на каждой позиции выбор не из 92, а из 21 (согласные) или 5 (гласных). Десятибуквенный произносимый пароль даёт лишь ~34 бита против ~66 бит у полностью случайного той же длины.
Passphrase (Diceware)
Несколько случайных слов из словаря, разделённых пробелами: correct horse battery staple. Для генерации используется список EFF Short Wordlist – 1 296 коротких слов, ~10,3 бита на слово.
| Кол-во слов | Энтропия | Стойкость |
|---|---|---|
| 4 | 41 бит | Слабая |
| 5 | 52 бита | Приемлемая |
| 6 | 62 бита | Надёжная |
| 7 | 72 бита | Очень надёжная |
| 8 | 83 бита | Очень надёжная |
Шесть слов из EFF-списка сопоставимы по стойкости с 12-символьным случайным паролем, но легче запоминаются.
Почему Math.random() не подходит для паролей?
Math.random() и аналогичные функции (rand(), random()) – псевдослучайные генераторы с предсказуемым алгоритмом. Зная начальное значение (seed), можно воспроизвести всю последовательность. Браузеры не раскрывают seed, но сам принцип делает такие генераторы непригодными для защиты.
Криптографически стойкая альтернатива:
- JavaScript –
crypto.getRandomValues()– использует системный CSPRNG - Linux –
getrandom(2)или/dev/urandom - Windows –
BCryptGenRandom - macOS –
SecRandomCopyBytes
Эти источники заполняют массив случайными значениями напрямую из ядра ОС. Для паролей рекомендуется OsRng – прямой вызов системного генератора без промежуточных пользовательских алгоритмов.
Советы по использованию сгенерированных паролей
Храните в менеджере паролей – Bitwarden, KeePass, 1Password. Не записывайте в текстовые файлы и не отправляйте себе в мессенджерах.
Уникальный пароль для каждого сервиса – при утечке одной базы злоумышленник не получит доступ к другим аккаунтам.
Включайте символы с осторожностью – некоторые сервисы не принимают
!@#$%^&*. Если генератор выше выдаёт отклонённый пароль, отключите символы и увеличьте длину на 2–3 символов.Проверяйте энтропию, а не визуальную сложность –
aaaaaaaaaa1!выглядит как «сложный» (есть символы), но энтропия минимальна.kxmpszqjwltdвыглядит простым, но даёт 55 бит.Для мастер-пароля используйте passphrase – 7–8 слов из словаря легче набрать по памяти, чем 20 случайных символов, при сопоставимой стойкости.
Не полагайтесь на замену символов –
p@$$w0rdне стал надёжнееpassword. Атаки подстановки известны давно и автоматизированы.
Рекомендации носят информационный характер. Для защиты критичных данных проконсультируйтесь со специалистом по информационной безопасности.
Часто задаваемые вопросы
Что означает энтропия пароля в битах?
Какой длины должен быть рандомный пароль?
Чем passphrase отличается от обычного пароля?
Можно ли использовать один рандомный пароль для всех аккаунтов?
Почему компьютерный «случайный» – не всегда случайный?
Взломают ли мой 16-символьный рандомный пароль?
Похожие калькуляторы и статьи
- Рандомайзер паролей: как создать безопасный пароль онлайн
- Генератор паролей буквенно-цифровой – создать онлайн | 62 символа
- Генератор паролей из 12 символов онлайн
- Генератор паролей 8 символов – создать онлайн
- Рандомный ключ: генерация случайных ключей онлайн
- Генератор строк онлайн – создайте случайный текст, пароль или ID