Вопрос: Как определить энтропию пароля


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

"?e&ye&ga!ruaa!na!e%ta!e%rc#Iod$woH"2245

6
2018-04-09 08:39


Источник


Известна ли хакеру общую структуру пароля, например. только символы ASCII, цифры только в конце, все строчные буквы и почти чередующиеся буквы и специальные символы? - Daniel Beck♦
не все строчные буквы;), и никакой злоумышленник не будет теперь структурой, он основан на простом легко запоминаемом предложении с некоторыми базовыми изменениями, которые являются последовательными. - abdadooo22
Смотрите также security.stackexchange.com/questions/6499/... - ripper234
Ну, теперь, когда вы разместили его здесь, это довольно легко взломать :). - Brad Patton


Ответы:


Там в сайт, который может дать вам оценку энтропии для ввода пароля, В приведенном выше примере это предполагает ~ 210 бит.

enter image description here

Вы можете получить очень приблизительное предположение о том, сколько времени потребуется, чтобы взломать Как безопасно мой пароль,

Это предполагает, что для вашего взлома пароля в вашем примере потребуется стандартный настольный ПК 2 vigintillion лет.

enter image description here

Более подробный анализ пароля можно увидеть на Счетчик паролей,


13
2018-04-09 09:01



достаточно долго, я подозреваю;) - Journeyman Geek♦
Я видел, что оба сайта вводят вводящее в заблуждение чувство безопасности. Я поднял общее словарное слово, повторил его снова и снова, и «эфиропия» увеличивалась более чем линейно, что абсурдно. - user39559
О, я пропустил один посередине. Мне это нравится намного лучше, это очень хорошо, и, по крайней мере, у них есть достойный отказ от ответственности. - user39559
+1 Я узнал сегодня новое слово. Но я думаю, что я прочитал V-слово с R где-то ;-) - Ellesa


Ваш вопрос: «Он достаточно силен, чтобы предотвратить грубую силу?»

Настоящий ответ - "нет"

Полезный ответ: «Возможно, по крайней мере, в обозримом будущем»


Что вы должны спрашивать:

Мне нужно защитить данные такого типа, которые имеют требования x и y, и чувствительность z для моей компании. Является ли это подходящим уровнем энтропии.

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


4
2018-04-09 21:17



Обратите внимание также на более свежий xkcd: xkcd.com/936  Если вы не ограничены 8 символами, вам не нужно подвергать себя попытке запомнить (или даже повторить) линейный шум. - Dave Sherohman


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

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


4
2018-06-20 19:10



Добро пожаловать в Суперпользователя! Вот совет для ya: я бы добавил немного больше деталей с сайта и передал знания OP. Это ОК для гиперссылки на сайт, гораздо лучше гиперссылки, а затем суммировать. - KronoS
Отличная ссылка. Очень полезный и подробный анализ. Я собирался извлечь самый полезный материал в редактирование вашего ответа, но есть слишком много хорошего. - killermist
Я бы добавил еще несколько ссылок, но это был мой первый пост, и я был ограничен. Благодаря! - dmcgill50


Это зависит от случайности вашего пароля.

Если вы выберете пароль из следующего списка:

  • "?e&ye&ga!ruaa!na!e%ta!e%rc#Iod$woH"2245
  • aSBsb3ZlIHlvdSBLaXJzdGVuIFNoZWxieSBHdXllcg==

Тогда у вас есть точно 1 bit энтропии (это либо первый пароль, либо второй).

Вот когда вы читаете XKCD комикс что Дейв связался,


Но я могу сделать некоторые предположения о вашем пароле:

"?e&ye&ga!ruaa!na!e%ta!e%rc#Iod$woH"2245  (40 characters)

Похоже, вы используете алфавит:

  • верхний регистр A-Z (26 глифов)
  • в нижнем регистре a-z (26 глифов)
  • латинские цифры 0-9 (10 глифов)
  • ограниченный набор знаков препинания (предполагая 30 символов на клавиатуре с 101 клавишей)

Это соответствует алфавиту из 92 символов.

В дальнейшем при условии, что все ваши пароли имеют 40 символов, что дает вам:

92^40 = 3.56+E78

или 3,5 quinvigintillion возможные пароли.

Чтобы преобразовать это в bits вы делаете:

ln(92^40) / ln(2) = 260.94 bits

Это предполагает, что вашему злоумышленнику придется переборщить пароль.


Если нам нужна только информация, то количество бит на самом деле намного ниже, потому что вы на самом деле использовали гораздо более короткий алфавит:

  original: "?e&ye&ga!ruaa!na!e%ta!e%rc#Iod$woH"2245
rearranged: aaaaacdeeeegnoorrtuwyHI2245""?&&!!!!%%#$
  alphabet: acdegnortuwyHI245"?&!%#$   (24 characters)

Выполнение одного и того же расчета:

ln(24^40) / ln(2) = 183.4 bits

Реально там меньше бит информации, потому что я вижу, что каждый раз, когда вы вводите e за ним следует символ:

  • e&
  • e&
  • e%
  • e%

Поэтому мы заменяем e& с символом h, а также e% с символом i:

  original: "?hyhga!ruaa!na!ita!irc#Iod$woH"2245  (36 characters)
rearranged: aaaaacdghhiinoorrtuwyIH2245""?!!!!#$
  alphabet: acdghinortuwyIH2245"?!#$   (24 characters)

Что уменьшает информационный контент до:

ln(24^36) / ln(2) = 165 bits

И я заметил, что каждый ! предшествует a и за ним следует письмо:

  • a!r
  • a!n
  • a!e

Замена a! с k:

  original: "?hyhgkruaknkitkirc#Iod$woH"2245  (32 characters)
  alphabet: acdghiknortuwyIH2245"?#$   (24 characters)

Уменьшение бит до ln(24^32)/ln(2) = 146.7,

Это уменьшает только биты, необходимые для кодирования, поскольку мы выясняем информационный контент сообщения.

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

Но есть несколько эвристик, которые могут быть запрограммированы в алгоритм поиска ключей. Люди, пытающиеся напечатать случайным образом, набирают одинаковые вещи. Например, я часто получаю столкновение при случайном наборе текста:

adfadsfadsf

наряду с 18 400 другими результатами Google.


Мой самый надежный пароль - 57 символов, с 27-символьным алфавитом (a-z, ), который входит в 266 bits (ln(27^56) / ln(2) = 266.27).

С другой стороны, это 11 слова. Есть около 2^11 общие слова на английском языке. Это дает:

(2^11)^11 = 2.66E36 passphrases => ln((2^11)^11)/ln(2) = 121 bits

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

я мог бы добавить один бит если я выбрал между:

  • пробелы между словами
  • nospacesbetweenthewords

2
2018-04-15 17:52



Почему вы любите Кирстен Шелби Гайер? - CJ Dennis