Энтропия паролей: что делает пароль надёжным
Когда сайт сообщает вам, что ваш пароль «слабый» или «надёжный», он измеряет энтропию — математическую случайность вашего пароля. Понимание энтропии помогает создавать действительно безопасные пароли, а не просто трудные для ввода.
Что такое энтропия?
Энтропия, измеряемая в битах, определяет, насколько непредсказуем пароль. Каждый бит энтропии удваивает количество возможных паролей, которые злоумышленник должен перебрать. Формула:
Entropy = log₂(C^L)
Где:
- C = размер набора символов
- L = длина пароля
Альтернативно: Entropy = L × log₂(C)
Энтропия по набору символов
| Набор символов | Размер набора (C) | Бит на символ |
|---|---|---|
| Только цифры (0-9) | 10 | 3.32 |
| Строчные буквы (a-z) | 26 | 4.70 |
| Строчные + цифры | 36 | 5.17 |
| Смешанный регистр (a-z, A-Z) | 52 | 5.70 |
| Смешанный регистр + цифры | 62 | 5.95 |
| Все печатные символы ASCII | 95 | 6.57 |
Примеры расчётов:
password(8 строчных): 8 × 4.70 = 37.6 бит — взламывается за секундыP@ssw0rd(8 смешанных): 8 × 6.57 = 52.6 бит — взламывается за часыcorrect-horse-battery-staple(28 строчных + спецсимволы): значительно более высокая эффективная энтропия за счёт длины
Длина против сложности
Вот неочевидная истина: длина вносит больший вклад в энтропию, чем сложность.
| Пароль | Длина | Энтропия | Время взлома (1 млрд попыток/сек) |
|---|---|---|---|
Xy7! | 4 | 26.3 бит | < 1 секунды |
Xy7!Qp2$ | 8 | 52.6 бит | 142 года |
mysimplepassword | 16 | 75.2 бит | 1.2 миллиарда лет |
correct horse battery | 22 | 103 бита | Тепловая смерть Вселенной |
16-символьный пароль из строчных букв надёжнее, чем 8-символьный пароль со всеми типами символов. Именно поэтому современные рекомендации по безопасности (NIST SP 800-63B) советуют длинные парольные фразы вместо коротких сложных паролей.
Проблема «правил сложности»
Традиционные политики паролей (должны содержать заглавные, строчные буквы, цифры, спецсимволы) контрпродуктивны:
- Предсказуемые шаблоны: пользователи делают первую букву заглавной и добавляют
1!в конце →Password1! - Снижение запоминаемости: сложные пароли записываются на стикерах
- Ложная безопасность: 8-символьный «сложный» пароль имеет меньше энтропии, чем 16-символьный простой
Современные рекомендации от NIST:
- Минимум 8 символов, рекомендуется 15+
- Без правил состава (заглавные, спецсимволы и т.д.)
- Проверка по базам утечек паролей
- Разрешены все печатные символы, включая пробелы
- Без принудительной периодической смены
Стратегия парольных фраз
Парольные фразы используют случайные слова вместо случайных символов:
method: pick 4-6 random words from a dictionary
example: "timber quantum spoon velocity"
entropy: 4 words × ~12.9 bits/word (from 7,776-word list) ≈ 51.7 bits
better: 6 words ≈ 77.5 bits
Метод Diceware использует список из 7776 слов (6^5, соответствующий пяти броскам кубика). Каждое слово добавляет 12.9 бит энтропии.
Преимущества:
- Запоминаемость (слова можно визуализировать)
- Длина (естественно 20-35 символов)
- Высокая энтропия при достаточном количестве слов
- Простота ввода
Генерируйте надёжные случайные пароли и парольные фразы с помощью нашего Генератора паролей.
Реальные скорости атак
Энтропия имеет значение только относительно скорости атаки:
| Тип атаки | Скорость | 40-битный пароль | 60-битный пароль | 80-битный пароль |
|---|---|---|---|---|
| Онлайн (с ограничением) | 1 000/сек | 12.7 дней | 36 559 лет | 38 млн лет |
| Офлайн (CPU) | 1 млрд/сек | 1.1 секунды | 36.5 лет | 38 334 года |
| Офлайн (GPU-кластер) | 1 трлн/сек | < 1 секунды | 13 дней | 38 лет |
| Государственный уровень | 1 квдрлн/сек | < 1 секунды | < 1 секунды | 14 дней |
Для онлайн-аккаунтов с ограничением частоты запросов и блокировкой достаточно 40+ бит. Для офлайн-атак (украденные хеши паролей) минимум — 80+ бит. Именно поэтому существуют алгоритмы хеширования паролей, такие как Argon2 и bcrypt — они делают каждую попытку затратной.
Математика менеджеров паролей
Менеджер паролей полностью меняет уравнение:
- Один надёжный мастер-пароль: 80+ бит энтропии (парольная фраза из 6+ слов)
- Все остальные пароли: генерируются случайно, 128+ бит, уникальны для каждого сайта
- Без повторного использования: утечка на одном сайте не затрагивает другие
Математика в пользу менеджеров паролей неоспорима. Один повторно используемый пароль, каким бы надёжным он ни был, слабее уникальных слабых паролей на каждом сайте, потому что одна утечка компрометирует все аккаунты.
Оценка вашего пароля
При оценке надёжности пароля учитывайте:
- Есть ли он в базе утечек? — Даже «надёжные» пароли слабы, если они были скомпрометированы (проверьте на haveibeenpwned.com)
- Является ли он случайным? — Пароли, выбранные человеком, имеют гораздо меньше энтропии, чем случайные
- Как он хранится? — bcrypt с фактором стоимости 12 добавляет ~22 бита эффективной энтропии по сравнению с обычным MD5
Подробнее о безопасной генерации паролей читайте в нашем руководстве по генерации паролей.
FAQ
Сколько бит энтропии мне нужно?
Для онлайн-аккаунтов с ограничением частоты запросов: минимум 40-50 бит. Для паролей, защищающих зашифрованные данные (шифрование диска, мастер-пароль менеджера паролей): 80+ бит. Для криптографических ключей: 128+ бит. Правильный ответ зависит от того, что вы защищаете и кто может атаковать.
Значительно ли усиливает пароль добавление спецсимвола?
Добавление одного спецсимвола увеличивает набор символов с 62 до 95, прибавляя около 0.6 бита на символ. Для 8-символьного пароля это примерно 5 дополнительных бит — эквивалент добавления одной строчной буквы. Длина почти всегда является лучшим вложением, чем добавление типов символов.
Связанные ресурсы
- Генератор паролей — Генерация криптографически надёжных паролей
- Генерация надёжных паролей — Полное руководство по безопасности паролей
- Сравнение алгоритмов хеширования — Как пароли хранятся безопасно