Хорошо, вот и вся история.
Прежде всего, давайте определим меру «хорошего качества» схемы. В случае с паролями и т. п. мерой является среднее количество попыток, которое требуется для атаки методом грубой силы, чтобы получить доступ.
Допустим, ваши пароли взяты из алфавита S с n символами, а длина пароля составляет k. Тогда общее количество возможных паролей равно nk.
Таким образом, в среднем атака грубой силы находит успешный пароль примерно через nk/2 или nk-1. испытания.
Для удобства и из-за некоторых теоретико-информационных соображений, в которые я не собираюсь вдаваться, мы обычно выражаем это числом битов, что равно lg nk sup> где lg обозначает основание логарифма 2. Поскольку мы привыкли думать о битах как о дискретных вещах, мы на самом деле обычно берем потолок этого числа, т. е. наименьшее целое большее чем lg nk, но на самом деле дробное значение вполне допустимо.
Для печатных символов, 8-символьных паролей и отсутствия других правил это число находится в районе 1008 или около 1016; это около 53 бит. Единственное, такие случайные пароли практически невозможно запомнить; они, как правило, заканчиваются на желтых стикерах и становятся уязвимыми для такого рода атак. Тем не менее, это предельный случай. Требуется около 100 триллионов попыток, чтобы угадать это методом грубой силы. Если каждая попытка стоит копейки, то теоретически ваши данные могут стоить до 1 триллиона долларов, прежде чем они будут стоить времени вора.
С другой стороны, общеупотребительных словарных слов всего около 50 000. Это около 16 бит, или грубой силой требуется около 25 000 попыток. Учтите, что каждая попытка стоит копейки: тогда ваши данные не должны стоить больше 250 долларов.
Оба они являются приложениями правила
R = PH
где R — риск, P — вероятность того, что произойдет что-то плохое, а H (опасность) это цена случившегося плохого.
Теперь пенни за попытку слишком дорого, но теперь у вас есть необходимые инструменты. Выясните, сколько стоят данные, и вы можете использовать этот метод, чтобы решить, насколько обширный набор правил вам нужен. (Но будьте осторожны, так как если вы делаете правила слишком строгими, то энтропия набора допустимых паролей становится малой, пока вы не дойдете до старой шутки, что после долгих размышлений Служба безопасности определила лучший пароль из всех — '*8h% Jd!', так что теперь все пользователи начнут использовать этот пароль.)
person
Charlie Martin
schedule
10.01.2009