УДК 004.9

ОЦЕНКА ДОСТАТОЧНОЙ СЛОЖНОСТИ ПАРОЛЯ ДЛЯ БЕЗОПАСНОГО ИСПОЛЬЗОВАНИЯ НА ВЕБ-РЕСУРСАХ

Блинов Александр Сергеевич1, Степаненко Мария Анатольевна2
1Нижегородский Государственный Технический Университет им. Р.Е. Алексеева, магистр
2Нижегородский Государственный Технический Университет им. Р.Е. Алексеева, кандидат технических наук, доцент кафедры информатики и систем управления

Аннотация
Рассмотрен вопрос выбора оптимальной длины пароля и алфавита для его составления. Приводятся экспериментальные сравнения количества всех возможных вариантов паролей при использовании различной длины пароля и алфавита. Так же приводятся экспериментальные сравнения времени подбора пароля различной длины и алфавита.

Ключевые слова: алфавит, длина пароля, пароль, сложность пароля


ANALYSIS OF SUFFICIENT COMPLEXITY OF PASSWORDS FOR SAFE USE ON WEB RESOURCES

Blinov Aleksander Sergeevich1, Stepanenko Maria Anatolievna2
1Nizhny Novgorod State Technical University n.a. R.E. Alexeev, master
2Nizhny Novgorod State Technical University n.a. R.E. Alexeev, Ph.D., Associate Professorof the Department of Computer Science and Control Systems

Abstract
The problem of choosing the optimal password length and the alphabet for its production. The experimental comparison of the number of all possible passwords using various password length and the alphabet. As well, presents experimental comparison of time guessing the password of various lengths and alphabet.

Keywords: alphabe, password, password complexity, password length


Рубрика: Математика

Библиографическая ссылка на статью:
Блинов А.С., Степаненко М.А. Оценка достаточной сложности пароля для безопасного использования на веб-ресурсах // Исследования в области естественных наук. 2014. № 8 [Электронный ресурс]. URL: http://science.snauka.ru/2014/08/8326 (дата обращения: 26.01.2017).

В настоящее время авторизация пользователей с помощью пароля является самым распространённым, но одним из самых уязвимых способов авторизации. Различные сервисы и программы предъявляют свои требования к паролю, а некоторые не формулируют даже минимальных требований к задаваемому пользователем паролю.

Требования к паролям бывают разные. Они могут ставить условие на количество символов в пароле (длина пароля), разрешать или наоборот, запрещать, использовать какой-либо диапазон печатных ASCII символов.

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

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

Сравним несколько вариантов длин паролей с использованием различных алфавитов. Возьмем длины пароля равные 6, 8, 10, 12, 16, 20 символам. При этом будем использовать шесть различных алфавитов (Таблица 1).

Таблица 1. Состав и количество символов алфавитов

Алфавит Количество символов
A1 = [0123456789]

10

A2 = [a-z]

26

A3 = [a-z0..9]

36

A4 = [a-zA-Z]

52

A5 = [a-zA-Z0..9]

62

A6 = [a-zA-Z0..9S], где

S = [!@#$%^&*()_-+=|/?.,:;[]{}]

88

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

             N=bar{A}_{n}^{k}=n^{k},                                           (1)

где n - мощность алфавита, k - длина пароля.

Под мощностью алфавита будем понимать количество символов, входящих в состав данного алфавита.

Расчеты количества возможных вариантов паролей разной длины с использованием различных алфавитов приведены на рисунке 1.

Рис. 1. Зависимость количества всех возможных паролей от используемого алфавита и длины пароля.

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

Рис. 2. Зависимость количества всех вариантов паролей от используемого алфавита

На Рис.2 приведен график степенной зависимости количества всех вариантов паролей от используемого алфавита.

После вычисления количественных значений пространств паролей при различных алфавитах и длинах паролей следует подсчитать среднее время подбора хэша для пароля. Хэшем пароля является результат вычисления хэш-функции от пароля.

Предположим, что для вычисления хэша в распоряжении злоумышленника имеются мощнейшие вычислительные комплексы, которые позволяют вычислять хэш пароля с помощью наиболее популярных хэш-функций (sha-2, sha-3, bcrypt, scrypt, PBKDF2) в среднем за 0.01 секунды, и таких комплексов 100, что позволяет вести вычисления в 100 параллельных потоков.

Среднее время подбора пароля, t_{cp}, будем считать по формуле:

                                t_{cp}=frac{t_{1}N}{2n}  ,                                                                  (2)

где t_{1} - среднее время вычисления хэша для одного пароля из всех возможных паролей;

N - общее количество всех возможных паролей;

n - количество параллельных потоков вычисления.

Результатам вычислений представлены на рисунке 3.

Диаграмма зависимости среднего времени подбора пароля от используемого алфавита при составлении пароля и длины пароля приведена на рисунке 3.

Рисунок 3. Зависимость среднего времени подбора пароля от используемого алфавита и длины пароля

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

В результате проведенных вычислений и сравнений можно сделать вывод, что пароль будет считаться достаточно сложным, если для его составления использовали алфавит большой мощности и длина пароля составляет 8-12 символов.

Сформулируем требования, рекомендуемые для формирования пароля:

  • длина пароля должна составлять не менее 8 символов;
  • состав алфавита должен соответствовать алфавитам A5-А6.

Библиографический список
  1. Bruce Schneier Choosing Secure Passwords // Schneier on Security: сетевой ресурс. 2007. URL: https://www.schneier.com/blog/archives/2007/01/choosing_secure.html (дата обращения 10.06.2014)
  2. Bruce Schneier«Snakeoil: Warning Sign #5: Ridiculous key lengths» // Schneier on Security: сетевой ресурс. URL: https://www.schneier.com/crypto-gram-9902.html (дата обращения 10.06.2014)


Все статьи автора «Александр Блинов»


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

Связь с автором (комментарии/рецензии к статье)

Оставить комментарий

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

Если Вы еще не зарегистрированы на сайте, то Вам необходимо зарегистрироваться: