Что такое бит энтропии
Бит – это выбор между двумя равновероятными вариантами. Если символ может принять 2 значения, энтропия равна одному биту. Если 1024 значения, то десяти битам, поскольку 2¹⁰ = 1024. Каждый дополнительный бит удваивает число вариантов.
Для алфавита из N равновероятных символов энтропия одной позиции равна log₂ N. Это значение дробное, ведь, например, десять цифр не укладываются в целое число двоичных выборов: log₂ 10 ≈ 3,32 бита.
Типичные алфавиты и их вклад
Десять цифр дают 3,32 бита на символ, двадцать шесть строчных латинских букв – 4,70 бита, шестьдесят две латинские буквы обоих регистров с цифрами – 5,95 бита. Полный набор из 94 печатных символов ASCII даёт 6,55 бита.
Разница между самым узким и самым широким алфавитом на одной позиции составляет менее 3,5 бита, поэтому длина пароля влияет на стойкость сильнее, чем добавление спецсимвола в алфавит.
Энтропия пароля целиком
Для случайного пароля длиной L энтропия равна L × log₂ N. Пароль из 8 случайных символов 94-значного алфавита даёт 8 × 6,5546 ≈ 52,4 бита, а пароль из 12 символов 62-значного алфавита – 12 × 5,9542 ≈ 71,5 бита.
Четырёхзначный пин-код из цифр содержит 4 × 3,32 ≈ 13,3 бита, то есть около десяти тысяч вариантов. Этого достаточно лишь там, где число попыток жёстко ограничено устройством или сервисом.
Случайность – обязательное условие
Формула верна, только если каждый символ выбран независимо и равновероятно, например генератором паролей. Пароль, придуманный человеком из слова с заменой букв на цифры, имеет энтропию намного ниже расчётной.
Поэтому расчёт по размеру алфавита даёт верхнюю оценку. Для паролей, которые вы создаёте сами, реальная энтропия определяется не размером алфавита, а предсказуемостью шаблона.
Типичные ошибки
Часто считают, что добавление одного спецсимвола в пароль из слова резко повышает стойкость. На самом деле алфавит растёт слабо, а шаблон остаётся предсказуемым. Ещё одна ошибка – перепутать основание логарифма и получить десятичные разряды вместо бит.
Кроме того, энтропию нельзя складывать для символов, выбранных зависимо друг от друга. Повторение блока или связанные части пароля дают меньше бит, чем простая сумма.
Границы применимости и безопасность
Энтропия описывает число вариантов, но не защищает от утечки базы паролей, фишинга и повторного использования одного пароля на разных сервисах. Эти риски нужно закрывать организационными мерами и менеджером паролей.
Калькулятор носит учебный характер и не заменяет консультацию специалиста по информационной безопасности. Требования к паролям вашей организации задаются её внутренними политиками.
Как использовать результат на практике
Сначала определите набор символов, который разрешает система, затем найдите log₂ N и умножьте на планируемую длину. Так вы сравните, что даёт больше бит: добавление двух символов или переход на более широкий алфавит.
Для паролей, которые вы не обязаны помнить, разумно использовать менеджер паролей и длинные случайные строки. Для запоминаемых фраз полагайтесь не на эту формулу, а на рекомендации по построению парольных фраз.
Для сравнения: пароль из шести случайных строчных латинских букв даёт 6 × 4,70 ≈ 28,2 бита, а пароль из трёх случайных слов словаря в несколько тысяч слов даёт около 36 бит. Подобные сопоставления помогают оценить, что именно повышает стойкость.
Формула расчёта
H = log₂ N; H(пароля) = L × log₂ N
Проверенные примеры
Сколько бит даёт один случайный символ из 94 печатных знаков ASCII?
log₂ 94 ≈ 6,5546 бита; пароль из 8 таких символов даёт около 52,4 бита.
Сколько бит даёт одна случайная цифра?
log₂ 10 ≈ 3,3219 бита; пин-код из 4 цифр даёт около 13,3 бита.
Как пользоваться онлайн-калькулятором
- Определите размер алфавита: сколько разных символов может стоять на одной позиции.
- Введите его в поле N и оставьте основание логарифма равным 2.
- Нажмите «Вычислить» и получите биты на один символ.
- Умножьте результат на длину пароля, чтобы получить энтропию пароля целиком.