id: Гость   вход   регистрация
текущее время 13:13 28/03/2024
Владелец: unknown (создано 01/02/2010 15:55), редакция от 01/07/2010 16:09 (автор: unknown) Печать
Категории: криптография, сайт проекта, faq
создать
просмотр
редакции
ссылки

Криптография: практика


Вычеркнутые вопросы перенесены в FAQ


Оглавление документа:

Парольную фразу какой длины имеет смысл использовать в программах шифрования?

Многие программы используют стандарт PBKDF2, который обеспечивает замедление атак словарного перебора, за счёт многократного хэшированию с солью. Многократное хэширование даёт замедление проверки каждого пароля. Т.н. "соль" (случайно сгенерированная открытая строка) используется для предотвращения использования заранее просчитанных таблиц ключей из паролей.


Если даже не рассматривать эти меры противодействия словарным атакам, то для самых консервативных оценок нужно исходить из 128-битной стойкости пароля.


Т. е. pn должно быть примерно равно 2128, где p — количество символов во множестве для случайного выбора, из которого составлен пароль, n — длина пароля.
Например 2727 ≈ 2128 — если можно запомнить абсолютно случайный набор из двадцати шести букв с клавиатуры + пробел, длиной также из 27 символов.


Энтропию одного символа можно посчитать, решив уравнение 2x=N, где N это количество символов в алфавите:
x = log2(N) = ln(N)/ln(2)
Умножив эту величину на количество символов в пароле, легко рассчитать его общую энтропию.


На практике проще всего запомнить 10 случайно выбранных слов из специально подготовленных словарей коротких слов Diceware, что даст 128-битный уровень. Слова можно связать во фразу для лёгкого запоминания, главное не использовать известные фразы, не подгонять порядок слов под естественный.


Для оптимизации простоты запоминания можно уменьшать число слов, но увеличивать число дополнительных символов, сверяя получаемое значение энтропии пароля с формулой.


См. также Современная техника взлома паролей, Выбор и защита паролей, Фонетический пароль

Следующий вопрос?



 
На страницу: 1, 2, 3, 4, 5, 6 След.
Комментарии [скрыть комментарии/форму]
— Гость (04/07/2010 20:21)   <#>
Вот ответ на вопрос, что больше затруднит перебор – добавление при вводе пароля специальных символов или увеличение его длины на один обычным альфанумериком (при описанных выше условиях – 30 спец и 62 обычных символа): Зависит от длины пароля.
Если 11 или больше – использование спецсимволов, если 10 или меньше – увеличение длины.
Потому что:
(62 + 30)^10 / 62^(10 + 1) = 0.83477549
(62 + 30)^11 / 62^(11 + 1) = 1.23869911

ps
Это не ответ на вопрос "что проще использовать", который во многом субъективен.
— Гость (04/07/2010 20:38)   <#>
Если где-то установлено ограничение на длину пароля
Оно везде есть, хотя бы потому, что память ограничена. Дабы избежать всяких неразумных переполнений, её выставляют (даже при шифровании дисков) равной где-нидь в 255 или тысячу (кто знает более точные цифры, пусть поправит). Это так, к слову.
— Гость (05/07/2010 02:32)   <#>
Специсимволы не имеют абсолютно никаких преимуществ перед незначительным удлинением нормального пароля. Особенно если в случайном пароле будут 6-7 специальных знаков (при 30 спецсимволах). Это просто глупость. Зачем вы отстаиваете глупую точку зрения? "Нет ни за что не наберу двух лишних цифр или букв, буду вбивать закорючки растопырив пальцы назло здравому смыслу."

Это так, к слову.

Это явно не к слову. 255 символов не называется ограничением пароля.
— Гость (05/07/2010 07:20)   <#>
Специсимволы не имеют абсолютно никаких преимуществ перед незначительным удлинением нормального пароля.

Здесь есть 2 эффекта. Чем больше алфавит, тем случайней пароль при той же длине; но чем меньше подмножество алфавита, из которого выбираются "дополнительные символы" (например, прибавка к паролю для улучшения его стойкости), тем хуже, по сравнению со случаем, когда подмножество совпадает с самим множеством. Идеально, конечно, выбирать удлиннение пароля не давая ни преимуществ спецсимволам, ни выраженного пренебрежения к ним: продолжение пароля должно быть случайно, как и сам пароль, соображения же про особую роль спецсимволов идут вот откуда: в силу лёгкости запоминания основная часть пароля у народа обычно не содержит спецсимволов, тогда, добавляя оные к паролю, производится не только удлиннение пароля, но и расширение использованного алфавита. Если же "основная часть" пароля уже содержала спецсимволы. то удлинять его именно за счёт них же смысла не имеет. Это были чисто качественные соображения, что же касается количественных – Гость выше привёл ссылку с расчётами (я их не проверял, но выглядят правдоподобно и результаты вполне физичны: ответ зависит от числа символов в пароле и т.д.)

255 символов не называется ограничением пароля.
А 20 не называется числом лет человека. Поясните свою глубокую мысль для простых смертных.
— Гость (05/07/2010 08:06)   <#>
Здесь есть 2 эффекта.

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

Пароль первый, выглядит вот так:
Стойкость 128-бит. Крутизна хакерства: 100%.

Пароль второй, выглядит вот так:
Стойкость 128-бит. Крутизна хакерства: 0%.

Гипотеза: второй пароль легче читать и вводить. Контраргументы для этой гипотезы никто так и не представил. Можете попробовать набрать каждый из них и убедиться, что сделать легче.

А 20 не называется числом лет человека. Поясните свою глубокую мысль для простых смертных.

Что же здесь пояснять? Ограничение пароля было, если мне не изменяет память, в ICQ, до 8 символов. Вот это ограничение. А 255 символов даже в ЦРУ никому не придёт в голову использовать.
— unknown (05/07/2010 08:41)   профиль/связь   <#>
комментариев: 9796   документов: 488   редакций: 5664
Ждём построение графика семейства функций pn для разных p, n в логарифмической шкале.
— Гость (05/07/2010 09:14)   <#>
я их не проверял
Проверка очень проста – ответ ищите в Гугле, в качестве запроса используя то, что до знака равенства. Но лучше для проверки взять какой-нибудь другой калькулятор – ведь и в гугле могут быть ошибки.

Ждём построение графика
Вот освою какой-нибудь матлаб... :)

Специсимволы не имеют абсолютно никаких преимуществ перед незначительным удлинением нормального пароля.


Практическое правило получается такое: для нивилирования преимуществ спецсимволов удлинять нужно на цифру десятков в длине пароля плюс один.

Контраргументы для этой гипотезы никто так и не представил.
Вы, вероятно, невнимательно читаете:
некоторые просто запоминают расположение клавиш и нажатие shift'а
Объясняю ещё раз: спецсимвол вводится нажатием шифта и клавиши с цифрой (0-9) либо буквой (ёхъжэбю) и остаётся всего лишь четыре клавиши со спецсимволами как таковыми (.-=\) три из которых вполне читабельны и два из них (точка и дефис) даже употребляются при написании литературных текстов. (Кстати, говаря что спецсимволов 30, забыл про "|" и "\", так что их 32, а с пробелом и все 33)

Запоминайте в пароле русские альфанумерики и ещё "большие" цифры, а вводите на латинском регистре, и будет вам щастье!

Ну и ещё некоторые запоминают расположение клавиш, а не символы на них.
— Гость (05/07/2010 09:23)   <#>
второй пароль легче читать и вводить. Контраргументы для этой гипотезы никто так и не представил.

Ваша логика, я вижу, такая: берём вывод pwgen, выглядеть он будет примерно так:

Теперь из этого вывод выбирается пароль, по возможности (в идеале – полностью) не содержащий спецсимволов. Если нагенерить много паролей то такой точно можно будет найти. Поскольку каждый пароль считается в вашей логике одинаково стойким, вы делаете вывод, что будет столь же стойким и выбранные (один из десятков или сотен примеров) пароль, не содержащий спецсимволов. Если вы не замечаете здесь проблему с логикой/математикой/комбинаторикой/вероятностью, то я даже не знаю какие ещё аргументы вам стоит привести (хотя их все уже привёл Гость, просто тупо дав результаты расчёта – вы ни одно число не оспорили).


А можно я не буду в ответ опускаться до троллинга, оффтопа и неконструктивных образных красных словец?
— Гость (05/07/2010 09:29)   <#>
Запоминайте в пароле русские альфанумерики
Если что, то толковый (хороший) словарь произносимых буквосочетаний будет включать и проверку русских слов, набранных латиницей, хотя как полумеру про такой подход помнить можно :)
— Гость (05/07/2010 09:39)   <#>
Запоминайте в пароле русские альфанумерики
Да, кстати, русскому человеку русские буквы употреблять легче, чем латинские! А использовать латинский алфавит там где можно использовать свой – это низкопоклонство перед западом!!! Вот. И не важно, как там внутри – там вообще биты и электроны.
— Гость (05/07/2010 09:49)   <#>
Есть ещё вариант набора русских слов транслитом :)
— Гость (05/07/2010 10:47)   <#>
A MO}|{HO no PyccKu nucaTb u TAK:)

— Гость (05/07/2010 10:58)   <#>
[offtop]
Лучше 2 -> r:
"KogupoBoK MHoro u He Bcerga BbIxoguT HacTpouTb nporpaMMy KaK Hago"
[/offtop]
— Гость (05/07/2010 12:22)   <#>
Гость (05/07/2010 09:23)

Я уже устал повторять одно и то же.
каждый пароль считается в вашей логике

Вы принципиально отказываетесь понимать мою логику. И я не знаю что с этим делать. Прочитайте первый комментарий в топике ещё раз, если вы не понимаете как разные алфавиты дают одинаково стойкие пароли. И циферки другого Гостя здесь не при чём. Он пытался опровергнуть очевидно истинное утверждение, и даже убедил себя в том, что он что-то доказал. "Опровергать" его выкладки у меня нет ни малейшего желания.
— Гость (05/07/2010 14:21)   <#>
Он пытался опровергнуть очевидно истинное утверждение,
Вы допускаете, что то, что очевидно для вас, может быть не очевидно для других? (Допускаете ли вы, что ошибаться можете вы, я уже и боюсь спрашивать)
"Опровергать" его выкладки у меня нет ни малейшего желания.
Ну почему-же? Вдруг ваша интуиция точнее, чем гугл-калькулятор?
На страницу: 1, 2, 3, 4, 5, 6 След.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3