2011-gre-cs-practice-book.pdf/Q31 — различия между версиями
Ydanyok (обсуждение | вклад) |
Ydanyok (обсуждение | вклад) |
||
Строка 14: | Строка 14: | ||
=== Объяснение === | === Объяснение === | ||
+ | |||
+ | |||
+ | Пусть $n$ — длина пароля, а $k$ — размер алфавита. Тогда количество возможных паролей равно: | ||
+ | |||
+ | $$ k^n $$ | ||
+ | |||
+ | В нашем случае $k = 10$, так как алфавит содержит 10 символов. Длина пароля варьируется от 1 до 6 символов, поэтому нам нужно просуммировать количество возможных паролей для каждой длины: | ||
+ | |||
+ | $$ \sum{n=1}^{6} 10^n = 10^1 + 10^2 + 10^3 + 10^4 + 10^5 + 10^6 $$ | ||
+ | |||
+ | Вычислим эту сумму: | ||
+ | |||
+ | $$ 10^1 = 10 $$ | ||
+ | |||
+ | $$ 10^2 = 100 $$ | ||
+ | |||
+ | $$ 10^3 = 1000 $$ | ||
+ | |||
+ | $$ 10^4 = 10000 $$ | ||
+ | |||
+ | $$ 10^5 = 100000 $$ | ||
+ | |||
+ | $$ 10^6 = 1000000 $$ | ||
+ | |||
+ | Теперь сложим все эти значения: | ||
+ | |||
+ | $$ 10 + 100 + 1000 + 10000 + 100000 + 1000000 = 1111100 $$ | ||
+ | |||
+ | Таким образом, общее количество возможных паролей составляет 1 111 100. | ||
+ | |||
+ | Так как атака происходит с частотой один запрос в миллисекунду, то среднее время, необходимое для определения пароля, будет равно половине общего количества возможных паролей, умноженной на длительность одного запроса: | ||
+ | |||
+ | $$ t{\text{среднее}} = \frac{1}{2} \times 1111100 \, \text{мс} = 555550 \, \text{мс} $$ | ||
+ | |||
+ | Переведем миллисекунды в секунды: | ||
+ | |||
+ | $$ 555550 \, \text{мс} = 555.55 \, \text{с} $$ | ||
+ | |||
{{cstest-source|2011-gre-cs-practice-book.pdf|30|31}} | {{cstest-source|2011-gre-cs-practice-book.pdf|30|31}} |
Версия 14:47, 19 декабря 2024
Задача зарезервирована: Ydanyok 14:35, 19 декабря 2024 (UTC)
Рассмотрим атаку подбора пароля методом простого подбора(brute-force), которая может отправлять запросы аутентификации с частотой один раз в миллисекунду. Предположим, что пароль состоит из 1–6 символов из 10-символьного алфавита. В среднем, сколько примерно секунд потребуется, чтобы определить пароль с помощью этого типа атаки?
Ответы
- Правильный ответ: 555
- 100
- 500
- 1000
- 1111
Объяснение
Пусть $n$ — длина пароля, а $k$ — размер алфавита. Тогда количество возможных паролей равно:
$$ k^n $$
В нашем случае $k = 10$, так как алфавит содержит 10 символов. Длина пароля варьируется от 1 до 6 символов, поэтому нам нужно просуммировать количество возможных паролей для каждой длины:
$$ \sum{n=1}^{6} 10^n = 10^1 + 10^2 + 10^3 + 10^4 + 10^5 + 10^6 $$
Вычислим эту сумму:
$$ 10^1 = 10 $$
$$ 10^2 = 100 $$
$$ 10^3 = 1000 $$
$$ 10^4 = 10000 $$
$$ 10^5 = 100000 $$
$$ 10^6 = 1000000 $$
Теперь сложим все эти значения:
$$ 10 + 100 + 1000 + 10000 + 100000 + 1000000 = 1111100 $$
Таким образом, общее количество возможных паролей составляет 1 111 100.
Так как атака происходит с частотой один запрос в миллисекунду, то среднее время, необходимое для определения пароля, будет равно половине общего количества возможных паролей, умноженной на длительность одного запроса:
$$ t{\text{среднее}} = \frac{1}{2} \times 1111100 \, \text{мс} = 555550 \, \text{мс} $$
Переведем миллисекунды в секунды:
$$ 555550 \, \text{мс} = 555.55 \, \text{с} $$
Исходники — вопрос 31 на 30 странице книги «2011-gre-cs-practice-book.pdf»
Если все сделаете правильно, по ссылке выше будет открываться правильная страница в правильном PDFе.