Как стать автором
Обновить

Комментарии 83

НЛО прилетело и опубликовало эту надпись здесь
Есть мнение, что во втором случае подбор по словарю займет несколько минут.
Почему? На рисунке же есть — по 11 бит на слово (из расчёта что «часто употребляемых» слов всего 2048). 4 слова.
Достаточно просто разбавить третьей большой буквой в третьем слове и например вторую букву второго слова заменить на цифру 2, и в итоге такой пароль будет брутфорсится ОЧЕНЬ долго.

Проблема в том, что многие системы имеют ограничение на длинну пароля. Мой любимый 19 символов далеко не везде лезет… :( Чо уж говорить про более длинные. Согласно кипасс — у него 86 бит энтропия

А. И фраза эта — на русском языке в английской раскладке. Т.е. я его не смогу ввести только с мест, где раскладка не совпадает, да :( — но зато он в себе содержит кучу всяких вкусных спецсимволов, Которые запоминать не надо, они просто так расположены.
Меняйте пароль. Вы выдали достаточно информации чтобы серьезно увеличить шансы злоумышленника.
P. S.: «любимый» пароль это уже уязвимость :)
Увеличить шансы на что? И кто сказал что «любимый» == использующийся? ) Я привел пример, сейчас уже действую несколько по другому.

Просто в целом — я хотел подтвердить слова комикса — сложный и короткий =! стойкий :)
А длинный в виде фразы из стиха или чего-либо еще, с небольшой модификацией — вполне себе отличный вариант, и запоминающийся.
Фраз из стиха сильно меньше (в астрономическое количество раз), чем «предложений» из 12 популярых слов. 12 это всего в 3 раза длиннее «correct horse battery staple» и получается 128 бит. А модификации символов можно делать в обоих случаях.
И что, что меньше? Их легче запомнить, а модификации крайне сложно угадать. Математически обосновать не могу, к сожалению :(
Но фраза в 3 раза длиннее чем указанная — это 75 символов. Как вы их в 128 бит уместите то?
Используется 1626 слов. 12 такими словами можно закодировать чуть больше 128 бит.

1626^12 = 341543870028173427817970975906355941376
  2^128 = 340282366920938463463374607431768211456


Это в Electrum используется для запоминания seed.

image
Да, но опять же — это при условии отсутствия каких-либо модификаций.
Когда число паролей превышает десяток, вспомнить модификации в каждом из них после месяца отпуска — то ещё удовольствие. Конечно, есть keepass, но сейчас речь не о нём.
когда число паролей превышает десяток — пользуют всякие менеджеры, ммм?

у меня есть некоторое количество разных паролей, и они никак и нигде не повторяются. если надо что-то вот не записанное в менеджер — придумывается еще один пароль, но такие вещи бывают КРАЙНЕ редко :)
Если вносить модификации, то можно укоротить на пару слов, чтобы получились те же 128 бит. Но стоит ли оно того? По-моему, «correct horse battery staple» запомнить проще, чем «c0rr3ct hor&e b4t4ery». А ещё такие мнемоники можно с меньшим риском оставлять (в куче другого текста) на видном месте, так как они меньше похожи на пароли. Скажем, маскируем под список в магазин или под записную книгу, но некоторые «покупки» или «контакты» будут иметь фамилию House и т.д.
Да, но если фраза осмысленная / часть текста/стиха/выражения — она может быть довольно длинная + надо помнить только несколько простейших модификаций — лезнаябелоснеЖЖкаи7гномав — тут целых 5 модификаций, и все они довольно легко запоминаются.
Что в итоге дает пароль — ktpyfz,tkjcyt::rfb7uyjvfd

Как у него с битностью? :)
119, однако запомнить такой пароль сложновато.
Мой мастер-пароль сейчас состоит из фразы в 35 символов, 165 бит.

Для сервисов пароли лучше использовать не длиннее 16 символов.
Хм. А почему не длиннее 16? Мне интересно.

Насчет сложновато — с этим можно поиграться, это первое что пришло в голову :)
Например Origin позволял через клиент поставить пароль любой длинны и принимал его без проблем. А на сайт зайти с этим паролем не получалось — не тот пароль и хоть ты тресни.
Позже я обнаружил проблему — длинна пароля ограничивалась 16 символами и клиент длинные пароли обрезал, сайт же — принимал как есть и если пароль был длиннее 16 символов — зайти на сайт небыло возможности.
Понятно.
Примерно об этом я и говорил в самом начале. =(
Например, мой банк на сайте не позволяет делать пароль длиннее 14 символов, и это без СпецСимволов.
Почему так — не знаю… =(
Где-то слышал объяснение, что слишком длинные пароли облегчают поиск коллизий.
Тоже в такую ситуацию попадал, не помню с чем. Генерированные keepass пароли лучше как раз делать не слишком длинными, чтобы на такое не напороться, и бессмысленными, какие keepass и генерирует. Их же не нужно не только запоминать, но даже видеть. А все эти хитрости относятся к мастер-паролю и другим паролям, которые вводятся вручную.
А разве менеджеры паролей используются как-то иначе?
Некоторые их используют как подстраховку и хотят все пароли держать в голове.
119 бит — для пароля из случайных букв (ну ладно, того же числа букв) той же длины, тут даже на глаз намного меньше. keepass и подобные не может оценить энтропию в неслучайном пароле (а этот пароль явно неслучаен).
он не случаен, но его модификация случайна. А значит и пароль тоже является достаточно случайным.
Сегодня я слово 7 заменил цифрой, завтра я сделаю 7емь или еще как-нибудь :)

Она будет меньше, но сложнее, НАМНОГО сложнее для запоминания, чем эта длинная фраза с некоторыми достаточно случайными заменами.

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

А если они равны — то мы выигрывам в легкости запоминания, что и требовалось доказать.
«Лезная» — это от «железная»? :-)

Кипасс выдает 200 бит для обоих вариантов, но это верхняя оценка.

Давайте рассчитаем нижнюю. Допустим, таких же известных названий, как «Белоснежка и семь гномов» 1000 (10 бит). Пусть существует 100 модификаций (у учётом вариантов пусть будет 10 бит). 10+10*5=60 бит. Неплохо. Но запомнить сложнее, чем 12 слов, дающих 128 бит, и, что важнее, это выглядит как пароль, поэтому совсем нельзя записать на бумажку. Многие всё равно повесят пароль на стенку. Нужно сделать его максимально неприметным.

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

И ещё один подход. Есть готовые решения для скрытого внедрения водяного знака в текст.
$ sd-eng -i disney-history.txt disney-history-sd.txt "correct horse battery staple"
$ sd-eng -e disney-history.txt disney-history-sd.txt
  Source file : disney-history.txt
  Time        : Mon Nov 11 01:34:56 2013
  Recipient   : correct horse battery staple
  Comment     : <none>
  Source MD5  : 5ae186a5-4c3ba347
  Magic value : 018c5ea3-db19fc48
  Watermark   : 00000000d07c4392

disney-history.txt disney-history-sd.txt
Результат довольно уродлив и содержит много лишнего для хранения пароля. Потому что инструмент не для этого. Но как демонстрация идеи, подходит.
Неплохо. Но запомнить сложнее, чем 12 слов

Простите великодушно, но вам «лезнаябелоснеЖЖкаи7гномав» запомнить сложнее чем 12 случайных слов? Или я не так все понял?
«лезнаябелоснеЖЖкаи7гномав» это 60 бит, то есть примерно 6 случайных популярных слов. На 5 минут «лезнаябелоснеЖЖкаи7гномав» может и лучше. Если пароль нужно вспомнить, не пользуясь им месяц (сплавлялся и не брал с собой компьютер), то я бы полагался 6 случайных слов. Забуду я, что «гномав», а не «гномов» и всё.
Я не про биты. Я про сложность запоминания. 6 слов — да, но 12 имхо совсем другой порядок. И про биты — не все так однозначно, имхо. Я бы не равнял даже с 6 случайными словами. Все таки нет строгого способа посчитать энтропию неслучайных строк…
Запомнить 2 намеренные ошибки и 2 дополнительные буквы + 1 капс… да вы себя недооцениваете совсем :)
128 бит с учётом словаря популярных слов, в котором 2048 слов, т.е. 11 бит на слово. При условии, что атакующему известен этот словарь и известно, что фраза из него. Примерно так же работают архиваторы.

>а модификации крайне сложно угадать.

Кстати, у каждой модификации вполне определённое число бит энтропии.

Навскидку сложно предположить, сколько бит энтропии в фразе из стихотворения, тем более не случайной, но это число явно не слишком большое. И фразы уже несложно запомнить, если знать принципы мнемоники.
Будем считать, что объем мировой литературы равен 400 ТБ (ссылка). Будем считать, что вся она состоит из стихов, что 1 символ занимает 1 байт и средняя длина строки в стихе 20 символов. Тогда Получается 2 триллиона строк, это 40 бит («correct horse battery staple» даёт 44 бита). 40 бит при самом лучшем раскладе, а на самом деле стихи в этих 400ТБ меньшая часть, а стихов на знакомых Вам языках совсем мало. Ещё можно учесть неслучайность при выборе строки человеком. Если выбирать не первую случайную строку из стиха, а отбрасывать те, которые трудно запомнить, то случайность ухудшится.
Хм. Вы ведь не знаете насколько словарно-литературную фразу использовали. В ней могут просто поменять одно слово, например — мороз и солнце, день чудесный = мороз и солнце, день прелестный. или там талон и солнце, день чудесный… — а значит фраза уже выпала из словаря стихов.
А далее — по одной ошибке в слове — и все. Длинный пароль, неподбираемость по словарю, как по цитате — так и по отдельности.
Допустим — лезнаябелоснеЖЖкаи7гномав — тут ВСЕ слова уже выпадают из словаря, ибо модифицированы так, что не попадают в словарь.
Итого это получилось одно уникальное слово, которе практически не подбирается по словарю?
Не забывайте про принцип Керкгоффса. Пароль обязан быть сильным даже если атакующий знает вашу систему (например, у него есть несколько паролей от других ресурсов, сделанных по той же системе). Парольная фраза из случайных слов удовлетворяет этому требованию.
Да, но пароль из модифицированной осмысленной фразы так же вполне удовлетворяет этому требованию устойчивости.

Т.е. допустим взломщик узнал что у меня пароль — лезнаябелоснеЖЖкаи7гномав — ktpyfz,tkjcyt::rfb7uyjvfd

Как это ему поможет узнать, что в следующем парое — краАснющиймозтч3резпраЛив — rhfFcy.obqvjpnx3htpghfKbd — поможет установить где, как и в каком месте я модифировал осмысленную фразу?
Очевидно, применить каждую модификацию к каждому месту. Это не так сложно. И запомнить такой пароль сложнее. И перестаньте показывать, что у каждого пароля сменена раскладка: это даёт мне основания предположить, что смена раскладки на самом деле несёт 0 (ноль) бит энтропии.
Да, но какую модификацию? это сейчас я показал простейшие.
А модификация может быть просто во вставлении букв и цифр в середину слова, которая никак не связана.

Насчет раскладки — это для наглядности легкости запоминания.
И я тоже подумал, что энтропичности она не добавляет, если исходить из принципа Керкгоффса. Т.е. если злоумышленник в курсе что вы подменили раскладку — то сложность подбора никак не увеличивается.
А если несколько раз подряд менять раскладку с подменой отсутствующих символов?
Пример (исходное слово «суперпароль»):
1) cegthgfhjkm;
2) сегтхгфх8км (так как 'j' на русской раскладке односимвольно не набрать, берём цифру прямо над ней, можно заменить на 'Джей', 'джей' или 'ж' );
3) ctun[ua[8rv (тут уже можно остановиться);
4) стун-уа=8рв;
5) cney-ef=8hd.
Итого для восстановления надо помнить только исходную фразу и количество итераций или несколько символов подряд в забытом пароле.

Конечно, «с» не меняется, «ф» чередуется с «а», многие буквы не участвуют («ъ», «ш», «щ», «э» и т.д.), то есть коллизий не избежать, но энтропия добавляться должна неплохая.
Интересно, сколько сотрудников и студентов университета поменяло пароли после этого исследования. И какое у такой выборки будет распределение по указанным группам…
Увы, взломщикам их тоже запоминать не надо, для них они тоже просто так расположены :).
В смысле? Вы про терморектальный анализ или что?
В смысле, взломщику ничего не стоит проверить сгенерированную по словарю русскую фразу в английской раскладке.
Батенька, да у вас паранойя. Зачем допустим взломщику из Индостана проверять русские слова в английской раскладке? А отечественные взломщики задолбаются проверять все комбинации (английский + русский). Как вариант можно использовать например третьи языки.
Например башкирский — часть букв в нем из кириллицы, часть свои. А найти хороший словарь — проблема. Тем более раскладки для него различаются в зависимости от установленного для ввода софта.
Паранойи у меня нет. Я лишь заметил, что коль скоро прием «набрать не в той раскладке» является популярным, спецсимволы, получающиеся в результате его применения, ничего не прибавляют в плане безопасности.

Если взломщику из Индостана известно, что взламываемый пользователь — из России, то резон у него появляется.

Башкирский хорошо, если вы его знаете и пользуетесь башкирской раскладкой. А без этого… Мне вообще пришло в голову, что можно зашифровать исходную фразу простым подстановочным шифром. Но вручную это сделать будет затруднительно.
Вы не правы. Это прибавляет стойкости в плане простого брутфорса, т.е. для брутфорса надо еще спецсимволы клавиатурного поля включать. И словарь, который будет содержать слова одной раскладки в другой — ну, наверняка, такие существуют. Но вряд ли они могут покрывать прямо все фразы, например — хлеборазделочныймясокомбинат :)
Да, согласен. Действительно, против простого брутфорса эффект будет.

А вот разницы между обычным словарем и словарем с учетом смены раскладки не вижу: по сути, оба словаря одинаковы, только один для английского языка, а второй для русского. Оба не покрывают всех фраз примерно с одинаковой вероятностью.
Т.е. вы считаете, что словосочетание хлеборазделочныймясокомбинат является словарным? =) ибо с учетом раскладки и склонения и связывающих о в 2 несвязанных понятиях — мне кажется это уже неплохая защита от словаря.
Раскладка даёт примерно 1 бит энтропии. Не сказал бы, что понятия несвязаны. Человеческий мозг плохо умеет придумывать случайные фразы, современные подборщики паролей уже давно это используют.
Не верю, что раскладка дает всего один бит энтропии.
При прочих равных — вы ведь не можете знать какой пароль использовался. А раскладка в итоге дает рандомальный набор букв.

Не зная изначального пароля — до кривой модификации лезнаябелоснеЖЖкаи7гномав — ktpyfz,tkjcyt::rfb7uyjvfd добраться мне представляется только брутфорсом.

Я, не эксперт, но пока что вы меня не разубедили :)
ru.wikipedia.org/wiki/Принцип_Керкгоффса

Если атакующий — владелец сайта, где вы регистрировались с подобной системой пароля, то в этой системе катастрофически падает сложность подбора. Ничерта это не рандомный набор букв, в нём есть система даже при частотном анализе. Переборщики паролей уже сейчас достаточно умные, не стоит надеяться, что они поглупеют.
И каков же выход в таком случае? На ваш взгляд.
Случайная парольная фраза, которую запоминать (прокачанной на японских кандзях) мнемоникой.
Отлично :)
Будем обучать пару сотен сотрудников кандзи + мнемонике?

Но, довольно интересный вариант, дааа )
Хотя насчет частотного анализа — я думаю он вполне применим и к мнемонике кадзи (если я верно понял о чем речь)
Да нет же, пароли генерировать случайно (чтобы не оставить лишних уязвимостей), а запоминать фразы действительно несложно. По крайней мере тем, кто раньше запоминал тонну малосвязанных вещей подобным способом.
Т.е. иметь какую-то основную фразу-генератор и с помощью какого-либо алгоритма делать случайные пароли из нее?

А хранить тогда надо их где-то же… или как?
Извините, что влезаю в дискуссию, но на мой (возможно не столь искушенный) взгляд выход довольно прост — использовать менеджер паролей, и соответственно случайные пароли. Мастер пароль же можно делать каким угодно, пусть и «ktpyfz,tkjcyt::rfb7uyjvfd», откровенно забив на брутфорс (нечего брутфорсить ведь) и принцип Керкгоффса.
Нет, я считаю, что переход от словарной фразы к несловарной увеличивает надежность пароля вне зависимости от языка, в то время как переход от английской словарной фразы к русской словарной фразе или от английской несловарной к русской несловарной принципиально ничего не меняет.

Иными словами, имеет значение именно то, что фраза несловарная, а не то, что она русская, набранная в английской раскладке.
самособой, именно поэтому говорилось про некоторые модификации, которые выводят эту фразу из словаря, как то:
1) добавление букв к существующим — например семмь или красиввый
2) добавление цифр во фразе/замена на цифру — 7я (семья) или 3колор
3) добавление спецсимвола вместо буквы — прив3т, 4етный
4) намеренные орфографически ошибки, которые легко помнить

При этом на всю фразу — достаточно двух-трех модификаций, чтобы сделать ее очень устойчивой. К примеру — лезнаябелоснеЖЖкаи7гномав — ktpyfz,tkjcyt::rfb7uyjvfd =)
Нужно просто разбавлять символами
Это мнение неверно. Математика в комиксе уже предполагает, что словарь у взломщика == словарю случайных слов у генератора паролей.
Если слова действительно выбраны рандомно, то стойкость будет дико большая. Если «из головы». то словарь ограничится какой-нибудь тысячей слов.
Сорок тысяч обезьян в жопу сунули банан
Лукьяненко популярен, этот пароль точно в словарях будет =)
Никто и не спорит, что он там будет :)
Вот только нужно помнить, что если его слегка изменить, то это — уже совсем другой пароль, а значит — уже совсем по-другому будет подбираться.

Это отличный подход — брать пару строк из стиха или знамаенитую фразу, изменять и использовать в качестве пароля.
Кстати, теоретически — этот пароль не очень хорош, т.к. есть, например, глагол. Опять же, банан — обезъяна. Т.е. фраза все-таки осмысленная. Ну и, конечно, ону был бы из первых в словаре, т.к. засвечен в книжке Лукьяненко )
«В конце должна стоять точка» © ;)
«horsebatterystaplecorrect»! Wrong? Why?
Maybe it was «horsestaplebatterycorrect»?
Or maybe it was kind of about mare's nest?
Which one of my f*cking 287 passwords was there at all???
У кириллических пользователей в этом смысле преимущество: то, что мы можем набирать что-то на своей кириллице, но в латинской раскладке. Это правда полностью нивелируется если известно что использован такой метод. Просто меняется таблица символов.
Но у русскоязычных есть еще одно преимущество — возможность склонений и разных форм слов. Если фраза «лошадь кнопка батарея правильно» действительно по словарю легко определится, то уже фраза «лошадиная кнопка батареит правильно» — сложнее, а «лошадкина кнопочка обатареилась правильнищще» — словарно не подобрать, только брутфорс.

Я использую этот метод. В резуьтате имею пароль на 20+ символов, которые легко запомнить и трудно подобрать. Одно плохо — часто в веб-паролях запрещены пробелы, это усложняет набор и запоминание. Ну и дурацкие требования к налицию больших букв и цифр тоже мешают, когда пароль и без того ого-го.
собственно на это я и указывал, когда говорил про замены символов — это таки убирает слова из словаря, но говорят нынче алгоритмы мощные, обатареилась правильнищще подберет чуть ли не на полчаса дольше, чем просто батарея правильно :)
Как-то раз попросили вылечить от вирусов ноутбук люди из среднего по отечественным меркам бизнеса. Я обычно не использую CD или USB, если не проверил компьютер программным обеспечением, которое можно запустить обычным путём из операционной системы, а в безопасном режиме система также требовала пароль.

Итог — пароль был угадан вручную с пятого раза (что-то вроде «123456789»).
Как вариант можно использовать парольные фразы для запоминания.
Вместо бесполезный исследований лучше бы перестали хранить пароли в открытом виде.
не_читай@ворчи :)
Каюсь. Дочитал до гистограммы.
вроде как статья показывает, что безопасность вашей информации целиком зависит от владельцев ресурса, а вовсе не сложности пароля. они вот «угадали» 100% — наглядная иллюстрация того, почему не стоит использовать одинаковые пароли на разных ресурсах. :)
Непонятно, о каком «угадывании» идет речь? Они вроде не брутфорсили эти пароли.
ilya42, вас не затруднит еще раз перечитать оригинал и внести ясность?
НЛО прилетело и опубликовало эту надпись здесь
Замечательный пароль для студента. Будет крепко защищать его аккаунт: ровно до того момента, как ему потребуется ввести пароль в чьём-либо присутствии. И если даже короткий пароль типа 4$1dT0f? без спецподготовки не запомнить, то вот четыре осмысленных слова запомнятся моментально: при этом орфографические ошибки и тому подобные искажения элементарно обойдутся брутфорсером.
Если уж «в чьем-либо присутствии», то на компьютере может и кейлоггер стоять
В реальной жизни это может быть не компьютер, а, скажем, планшет или телефон. На котором по умолчанию высвечивается по букве набираемый пароль. Поставить на такой кейлоггер — задача нетривиальная. А вот скосить глаза на лекции — как нечего делать.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации