Русский

Как рассчитывается энтропия парольной фразы

Формула log2, проработанные примеры для всех трех списков EFF, сколько стоит акростих и почему счетчик силы сайта не согласен с этой страницей.

Энтропия измеряет процесс, а не пароль

Одиночный пароль не имеет энтропии. Фраза «правильный элемент конской батареи» сама по себе не является сильной или слабой — важно то, как она появилась. Если машина равномерно нарисовала четыре слова из списка 7,776, это будет один из примерно 3.7 миллионов миллионов равновероятных результатов. Если кто-то выбрал его, потому что видел в мультфильме, это один из немногих, и никакие арифметические действия этого не изменят.

Итак, каждый рисунок на этом сайте описывает генератор и его настройки, при условии, что злоумышленник знает эти настройки и сводится к угадыванию случайных розыгрышей. Это предположение является консервативным. Список, количество слов, диапазон длин, разделитель и правило регистра — все это опубликовано на этой странице, поэтому рассмотрение их как секретных приведет к завышению каждого числа здесь.

Формула

Для выбора, сделанного равномерно из N равновероятных возможностей, энтропия равна log2(N) бит. Каждый независимый выбор добавляет свои собственные биты, поэтому k независимых выборок из одного и того же пула N дают:

биты = k × log2(N)

Вот и весь расчет парольной фразы. База журналов 2 — это то, что превращает «сколько возможностей» в «сколько бит», а биты удобны, потому что каждый дополнительный бит удваивает работу, с которой сталкивается злоумышленник. Семьдесят битов в два раза сложнее шестидесяти девяти и примерно в тысячу раз сложнее шестидесяти.

Та же формула охватывает пароль со случайными символами, где N — размер набора символов, а k — длина: двадцать символов, взятых из набора 80, дают 20 × log2(80), что составляет около 126 bits.

Проработанные примеры для трёх списков

Длинный список EFF содержит 7,776 слов. log2(7,776) равен примерно 12.925, поэтому каждое слово содержит примерно 12.9 bits. Шесть слов дают 6 × 12.925, о 77.5 bits — значении по умолчанию на этой странице и собственной рекомендации EFF для этого списка. Семь слов посвящены 90.5, восемь — 103.4.

Оба коротких списка содержат 1,296 слов. log2(1,296) соответствует 10.34, поэтому шесть слов соответствуют 62 bits, семь — 72.4, а восемь — 82.7. Вот почему короткие списки хотят, чтобы одно или два дополнительных слова соответствовали длинному.

Пять слов из длинного списка составляют примерно 64.6 bits — почти точно так же, как шесть из короткого списка. Два пути к определенной силе действительно взаимозаменяемы; выберите тот, который дает слова, которые вам легче печатать.

Как диапазон длины влияет на фигуру

Минимальная и максимальная длина слова фильтрует список до того, как будет нарисовано какое-либо слово, поэтому N в формуле — это количество слов, которые выдерживают фильтр, а не размер файла. Страница пересчитывает это значение при изменении диапазона и показывает количество выживших, поэтому показатель энтропии всегда соответствует фактически используемому пулу.

Это небольшой эффект для разумных диапазонов и большой для экстремальных. Ограничение длинного списка словами, состоящими ровно из четырех букв, оставляет несколько сотен кандидатов, при этом каждое слово снижается примерно с 12.9 bits примерно до 8, что превращает кодовую фразу из шести слов примерно из 77 bits примерно в 48. На странице это будет показано, и в этот момент вам будет предложено расширить диапазон или добавить слова.

Что добавляют параметры разделителя и регистра

Фиксированный разделитель ничего не добавляет. Если каждый пробел представляет собой дефис, злоумышленник, знающий настройки, тоже вставит дефис в каждый пробел; у них нет выбора, чтобы догадаться.

Вариант случайного разделителя отличается. Каждый пробел независимо занимает один из пяти символов, поэтому каждый пробел добавляет log2(5), около 2.32 bits. Парольная фраза из шести слов имеет пять пробелов, что составляет около 11.6 дополнительных битов — реальный выигрыш, и страница это учитывает.

Та же логика применима и к делу. Нижнее, верхнее, заглавное и чередующееся — это фиксированные правила, которые ничего не добавляют. Случайный регистр подбрасывает независимую монету за слово, поэтому к слову добавляется ровно один бит: шесть бит к парольной фразе из шести слов. Это тоже засчитывается.

Стоит отметить, насколько они скромны. Случайный регистр и случайные разделители вместе добавляют около 17 bits к парольной фразе из шести слов, а седьмое слово само по себе добавляет около 13 и его гораздо легче запомнить. Добавление слов почти всегда является лучшим рычагом.

Сколько стоит акростих

При использовании акростиха каждое слово уже не извлекается из всего пула, а извлекается из слов, начинающихся с указанной вами буквы. Таким образом, формула становится суммой, а не произведением: общая сумма равна log2 пула для первой буквы плюс log2 пула для второй и так далее.

Буквы распределены очень неравномерно. В длинном списке EFF, ограниченном словами длиной от пяти до девяти букв, пул, начинающийся с s, в несколько раз больше, чем пул, начинающийся с j, и намного больше, чем пул, начинающийся с x. Таким образом, шестибуквенный акростих дает цифру где-то ниже, чем в шесть раз больше неограниченного значения на слово, и то, насколько ниже, полностью зависит от того, какие буквы вы выбрали.

Страница подсчитывает сумму именно для тех букв, которые вы вводите, и это единственный способ дать честную цифру. Если за одной из ваших букв нет слова в текущем списке и диапазоне длины, она указывает, какая буква, а не тихо терпит неудачу.

Акростих также не является секретом. Предположим, злоумышленник знает, что инициалы составляют имя вашей собаки, потому что это тот тип вещей, которые можно угадать.

Честно говоря, превращая биты во время

Оценки времени на этой странице предполагают, что оффлайн-атака на украденную базу паролей со скоростью один триллион попыток в секунду и что половина возможностей должна быть испробована, прежде чем появится правильный. Эти предположения высказываются везде, где появляется время, поскольку без них оценка времени не имеет смысла.

Один триллион догадок в секунду — заведомо заниженная цифра. Это подходящий регион для специализированного оборудования, атакующего быструю, плохо выбранную хеш-функцию. Сайт, правильно использующий современный хеш пароля, медленнее подвергается атаке в миллионы раз, а любая онлайн-форма входа в систему медленнее еще в миллиарды раз, поскольку каждая попытка представляет собой сетевой запрос, который сервер может ограничить.

Именно поэтому цифры на этой странице намеренно пессимистичны. Если по оценкам, поиск займет гораздо больше времени, чем кто-либо другой, реальная цифра по сравнению с компетентно управляемой службой еще больше.

Почему индикатор силы веб-сайта показывает другое

Большинство измерителей силы оценивают символы перед ними, потому что это все, что у них есть: они никогда не видят, как был сгенерирован пароль. Они вознаграждают смешанные классы символов, наказывают за повторение и часто сопоставляют словари общих паролей. По отношению к паролю, придуманному человеком, это разумная эвристика, и это единственное, что может сделать форма.

Он плохо оценивает сгенерированную парольную фразу по совершенно неправильной причине. Шесть строчных словарных слов с пробелами между ними выглядят, с точки зрения эвристики подсчета символов, именно тем, о чем он создан, чтобы предупреждать — даже несмотря на то, что слова были нарисованы случайным образом, и результат превосходит почти все, что счетчик аплодировал бы.

Если счетчик и эта страница расходятся во мнениях по поводу сгенерированной здесь парольной фразы, страница описывает процесс, а счетчик описывает внешний вид. Ни то, ни другое не лжет; они измеряют разные вещи, и только один из них знает, откуда взялись эти слова.

Что происходит с тем, что вы генерируете

ToolAcre генерирует пароли локально в вашем браузере. В высокочувствительных средах перед использованием любого веб-генератора паролей убедитесь, что вашему браузеру, устройству и операционной системе доверяют.

  • Каждая фраза-пароль и пароль генерируются на вкладке вашего браузера с помощью собственного криптографического генератора случайных чисел вашего браузера. После загрузки страницы сервер не задействован.
  • Ничего сгенерированного здесь не отправляется на ToolAcre. Политика Content-Security-Policy этого продукта ограничивает страницу ее собственным источником, поэтому браузер сам блокирует любые попытки отправить данные куда-либо еще.
  • Ничего не записывается в локальное хранилище, хранилище сеансов, файлы cookie, базу данных браузера, адресную строку или консоль браузера. Перезагрузка отбрасывает его; закрытие вкладки отменяет ее.
  • Нет ни учетной записи, ни входа в систему, ни скрипта аналитики, ни скрипта рекламы. Единственные загружаемые файлы — это статические списки слов.
  • Никакая история не сохраняется. Повторная генерация заменяет значение, а предыдущее не подлежит восстановлению.

Вопросы

Сколько бит достаточно?

Для обычной учетной записи с менеджером паролей все, что выше 70 bits, выходит за рамки реалистичных предположений. Для немногих кодовых фраз, которые защищают все остальное — сам менеджер, ваше устройство, вашу электронную почту — стремитесь выше, около 90 bits или более, что составляет семь или восемь слов из длинного списка.

Почему добавление слова помогает больше, чем добавление символа?

Слово из длинного списка умножает количество возможностей на 7,776, примерно на 12.9 bits. Символ, добавленный в фиксированную позицию, умножает его на единицу, поскольку злоумышленник знает, что он там есть. Учитываются только те варианты, которые на самом деле случайны.

Учитывает ли страница вариант случайного регистра на рисунке?

Да, по одному биту на слово, потому что каждое слово представляет собой независимый подбрасывание монеты. Правила с фиксированным регистром считаются нулевыми, поскольку злоумышленник, знающий это правило, может применить его самостоятельно.

Почему при оценке времени используется половина пространства ключей?

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

Достаточно ли 77 bits, учитывая скорость развития компьютеров?

Стоимость угадывания удваивается с каждым дополнительным битом, поэтому арифметика в значительной степени выгодна защитнику. Реальные риски, связанные с 77-битной фразой-паролем, связаны не с грубыми вычислениями, а с фишингом, вредоносным ПО на вашем устройстве, повторным использованием на разных сайтах и ​​службой, которая небрежно ее хранила. Это те вещи, на которые стоит обратить внимание.

Ограничения

  • Энтропия — это верхняя граница сложности угадывания, а не прогноз того, как на самом деле учетная запись будет скомпрометирована. Большинство учетных записей теряются из-за фишинга, повторного использования и взлома баз данных, а не из-за догадок.
  • На рисунках предполагается, что случайный источник является звуковым. Эта страница использует криптографический генератор браузера и отказывается работать без него, но не может проверить этот генератор изнутри страницы.
  • Оценки времени полностью зависят от предполагаемой скорости угадывания. Используемая здесь скорость указана намеренно жестко и может быть неправильной в любую сторону для любого конкретного злоумышленника.
  • Расчет предполагает, что каждое слово нарисовано независимо и равномерно. Если бы это было не так, сила была бы преувеличена, поэтому генератор рисует с заменой, а не удаляет уже использованные слова.
  • Никакая цифра энтропии не учитывает повторное использование парольной фразы, ее запись где-то в незащищенном месте или ввод на взломанной машине.