2011-gre-cs-practice-book.pdf/Q31 — различия между версиями

Материал из DISCOPAL
Перейти к: навигация, поиск
(Объяснение)
 
(не показано 8 промежуточных версий 2 участников)
Строка 1: Строка 1:
{{reserve-task|[[Участник:Ydanyok|Ydanyok]] 14:35, 19 декабря 2024 (UTC)}}== Вопрос: Q31-08c765 ==
+
== Вопрос: Q31-08c765 ==
 +
Рассмотрим атаку подбора пароля методом [https://ru.wikipedia.org/wiki/%D0%90%D1%82%D0%B0%D0%BA%D0%B0_%C2%AB%D0%B3%D1%80%D1%83%D0%B1%D0%BE%D0%B9_%D1%81%D0%B8%D0%BB%D0%BE%D0%B9%C2%BB простого подбора] (''brute-force''), которая может отправлять запросы аутентификации с частотой один раз в миллисекунду.
  
Рассмотрим атаку подбора пароля методом простого подбора(brute-force), которая может отправлять запросы аутентификации с частотой один раз в
+
Предположим, что пароль состоит из 1–6 символов из 10-символьного алфавита.  
миллисекунду. Предположим, что пароль состоит из 1–6 символов из 10-символьного алфавита. В среднем,
+
 
сколько примерно секунд потребуется, чтобы определить пароль с помощью этого типа атаки?
+
В среднем, сколько примерно секунд потребуется, чтобы определить пароль с помощью этого типа атаки?
  
 
=== Ответы ===
 
=== Ответы ===
 
 
* Правильный ответ: 555
 
* Правильный ответ: 555
 
* 100
 
* 100
Строка 15: Строка 15:
 
=== Объяснение ===
 
=== Объяснение ===
  
 +
Количество возможных паролей определяется по формуле: <m>k^n</m>
  
Для решения задачи используем метод полного перебора всех возможных комбинаций паролей. Количество таких комбинаций зависит от длины пароля ($n$) и размера алфавита ($k$). Общее количество возможных паролей вычисляется по формуле:
+
где k — размер алфавита, а n — длина пароля. В нашем случае k = 10. Так как длина пароля варьируется от 1 до 6 символов, необходимо просуммировать количество возможных паролей для каждой длины:
 
+
<m>\sum_{n=1}^{6} 10^n = 10^1 + 10^2 + 10^3 + 10^4 + 10^5 + 10^6</m>
$$
+
k^n
+
$$
+
 
+
В данном случае $k = 10$ (размер алфавита). Длина пароля варьируется от 1 до 6 символов, поэтому необходимо просуммировать количество возможных паролей для каждой длины:
+
 
+
$$
+
\sum_{n=1}^{6} 10^n = 10^1 + 10^2 + 10^3 + 10^4 + 10^5 + 10^6
+
$$
+
 
+
Вычисляем каждую степень отдельно:
+
 
+
$$
+
\begin{align*}
+
10^1 &= 10 \\
+
10^2 &= 100 \\
+
10^3 &= 1000 \\
+
10^4 &= 10000 \\
+
10^5 &= 100000 \\
+
10^6 &= 1000000
+
\end{align*}
+
$$
+
 
+
Суммируем полученные значения:
+
 
+
$$
+
10 + 100 + 1000 + 10000 + 100000 + 1000000 = 1111100
+
$$
+
  
 
Общее количество возможных паролей составляет 1 111 100.
 
Общее количество возможных паролей составляет 1 111 100.
  
Поскольку атака происходит с частотой один запрос в миллисекунду, среднее время, необходимое для определения пароля, будет равно половине общего количества возможных паролей, умноженной на длительность одного запроса:
+
Так как атака происходит с частотой один запрос в миллисекунду, среднее время, необходимое для определения пароля, будет равно половине общего количества возможных паролей, умноженной на длительность одного запроса:
 
+
$$
+
t_{\text{среднее}} = \frac{1}{2} \times 1111100 \, \text{мс} = 555550 \, \text{мс}
+
$$
+
 
+
Переводим миллисекунды в секунды:
+
  
$$
+
<m>t_{\text{среднее}} = \frac{1}{2} \times 1111100 \, \text{мс} = 555550 \, \text{мс}</m>
555550 \, \text{мс} = 555.55 \, \text{с}
+
$$
+
  
Таким образом, в среднем потребуется около 556 секунд (примерно 9 минут и 16 секунд), чтобы определить пароль методом простого перебора при заданных условиях.
 
 
{{cstest-source|2011-gre-cs-practice-book.pdf|30|31}}
 
{{cstest-source|2011-gre-cs-practice-book.pdf|30|31}}
  
Если все сделаете правильно, по ссылке выше будет открываться правильная страница в правильном PDFе.
+
{{question-ok|[[Участник:StasFomin|StasFomin]] 15:38, 19 декабря 2024 (UTC)}}
  
{{question-ok|}}
+
[[Категория:Комбинаторика]]
 +
[[Категория:Криптография]]

Текущая версия на 15:38, 19 декабря 2024

Вопрос: Q31-08c765

Рассмотрим атаку подбора пароля методом простого подбора (brute-force), которая может отправлять запросы аутентификации с частотой один раз в миллисекунду.

Предположим, что пароль состоит из 1–6 символов из 10-символьного алфавита.

В среднем, сколько примерно секунд потребуется, чтобы определить пароль с помощью этого типа атаки?

Ответы

  • Правильный ответ: 555
  • 100
  • 500
  • 1000
  • 1111

Объяснение

Количество возможных паролей определяется по формуле:

где k — размер алфавита, а n — длина пароля. В нашем случае k = 10. Так как длина пароля варьируется от 1 до 6 символов, необходимо просуммировать количество возможных паролей для каждой длины:

Общее количество возможных паролей составляет 1 111 100.

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

Исходники — вопрос 31 на 30 странице книги «2011-gre-cs-practice-book.pdf»