Обновлено:

Генератор рандомного пароля

Более 80% взломов аккаунтов происходит через скомпрометированные пароли. Слабый пароль – «123456», имя питомца, дата рождения – подбирается за секунды. Рандомный пароль, сгенерированный криптографически стойким алгоритмом, делает атаку перебором практически невозможной.

Как работает генератор рандомного пароля

Настройки генерации
Генерация...
Оценка стойкости:
Энтропия
– бит
Время полного перебора (10¹¹/сек)
Скопировано

Пароль сохранен в буфер обмена.

Калькулятор выше создаёт пароль на основе криптографически стойкого генератора псевдослучайных чисел (CSPRNG) – источника случайности, который использует энтропию операционной системы. Это тот же механизм, что задействован для TLS-ключей и сессионных токенов.

Параметры генерации:

  • Длина – количество символов в пароле (от 4 до 128)
  • Строчные буквы – a–z (26 символов)
  • Заглавные буквы – A–Z (26 символов)
  • Цифры – 0–9 (10 символов)
  • Символы – !@#$%^&* и другие (30 символов)

Размер алфавита напрямую определяет стойкость. При включении всех категорий пул составляет 92 символа, только строчных – 26.

Что такое энтропия пароля и зачем она нужна?

Энтропия – единственный объективный показатель стойкости пароля. Она измеряется в битах и показывает, сколько равновероятных комбинаций нужно перебрать для подбора.

Формула расчёта:

H = L × log₂(N)

Где L – длина пароля, N – размер алфавита.

Примеры:

ПарольДлинаАлфавитЭнтропия
abcdef62628 бит
aB3$fK9!89252 бит
kX7#mP2$vL4@nQ8!1692104 бит
correct horse battery staple4 слова129641 бит

Шестисимвольный пароль из строчных букв – всего 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 бита на слово.

Кол-во словЭнтропияСтойкость
441 битСлабая
552 битаПриемлемая
662 битаНадёжная
772 битаОчень надёжная
883 битаОчень надёжная

Шесть слов из EFF-списка сопоставимы по стойкости с 12-символьным случайным паролем, но легче запоминаются.

Почему Math.random() не подходит для паролей?

Math.random() и аналогичные функции (rand(), random()) – псевдослучайные генераторы с предсказуемым алгоритмом. Зная начальное значение (seed), можно воспроизвести всю последовательность. Браузеры не раскрывают seed, но сам принцип делает такие генераторы непригодными для защиты.

Криптографически стойкая альтернатива:

  • JavaScriptcrypto.getRandomValues() – использует системный CSPRNG
  • Linuxgetrandom(2) или /dev/urandom
  • WindowsBCryptGenRandom
  • macOSSecRandomCopyBytes

Эти источники заполняют массив случайными значениями напрямую из ядра ОС. Для паролей рекомендуется OsRng – прямой вызов системного генератора без промежуточных пользовательских алгоритмов.

Советы по использованию сгенерированных паролей

  1. Храните в менеджере паролей – Bitwarden, KeePass, 1Password. Не записывайте в текстовые файлы и не отправляйте себе в мессенджерах.

  2. Уникальный пароль для каждого сервиса – при утечке одной базы злоумышленник не получит доступ к другим аккаунтам.

  3. Включайте символы с осторожностью – некоторые сервисы не принимают !@#$%^&*. Если генератор выше выдаёт отклонённый пароль, отключите символы и увеличьте длину на 2–3 символов.

  4. Проверяйте энтропию, а не визуальную сложностьaaaaaaaaaa1! выглядит как «сложный» (есть символы), но энтропия минимальна. kxmpszqjwltd выглядит простым, но даёт 55 бит.

  5. Для мастер-пароля используйте passphrase – 7–8 слов из словаря легче набрать по памяти, чем 20 случайных символов, при сопоставимой стойкости.

  6. Не полагайтесь на замену символовp@$$w0rd не стал надёжнее password. Атаки подстановки известны давно и автоматизированы.

Рекомендации носят информационный характер. Для защиты критичных данных проконсультируйтесь со специалистом по информационной безопасности.

Часто задаваемые вопросы

Что означает энтропия пароля в битах?

Энтропия показывает количество случайных бит в пароле – сколько попыток нужно для взлома перебором. 40 бит – слабо, 60–80 – надёжно, 128+ – практически не взламываемо при текущих технологиях.

Какой длины должен быть рандомный пароль?

Для всех типов символов (92-символьный алфавит) минимум 12 символов – это ~78 бит энтропии. Для критичных аккаунтов лучше 16+ символов, что даёт 100+ бит и защиту от массированного перебора.

Чем passphrase отличается от обычного пароля?

Passphrase состоит из нескольких случайных слов, разделённых пробелами, например «correct horse battery staple». Легче запомнить при сопоставимой энтропии: 6 слов из списка EFF – ~62 бит.

Можно ли использовать один рандомный пароль для всех аккаунтов?

Нет. При утечке одной базы злоумышленник получит доступ ко всем аккаунтам. Генерируйте уникальный пароль для каждого сервиса и храните в менеджере паролей.

Почему компьютерный «случайный» – не всегда случайный?

Обычные генераторы (Math.random, rand()) – псевдослучайные: они выдают предсказуемую последовательность по известному алгоритму. Для паролей нужен CSPRNG – генератор на основе криптографически стойкого источника ОС.

Взломают ли мой 16-символьный рандомный пароль?

При 92-символьном алфавите это 104 бита энтропии – перебор займёт миллиарды лет на текущем оборудовании. Реальная угроза – не перебор, а кража через фишинг или утечку базы с слабым хешированием.

  1. Рандомайзер паролей: как создать безопасный пароль онлайн
  2. Генератор паролей буквенно-цифровой – создать онлайн | 62 символа
  3. Генератор паролей из 12 символов онлайн
  4. Генератор паролей 8 символов – создать онлайн
  5. Рандомный ключ: генерация случайных ключей онлайн
  6. Генератор строк онлайн – создайте случайный текст, пароль или ID