Надёжность пароля
Один из важнейших вопросов для пользователя ПК сегодня — это вопрос надёжности пароля. Что и неудивительно в свете наличия у современного пользователя большого числа аккаунтов на самых различных ресурсах. Отовсюду то и дело слышно: «Взломали ICQ, Вконтакте и т .д.!!!». Кроме того ключи и пароли активно используются для задач шифрования в самых различных системах документооборота (простой пример — «запароленный» Rar-архив).
Для внесения ясности в данный вопрос необходимо определиться с методами взломов. Можно выделить следующие методы взлома:
Первые три метода к вопросу надёжности пароля непосредственного отношения не имеют.
Метод перебора паролей по словарям. Большое число пользователей в качестве паролей указывают одно слово. Например, название вулкана или кличку любимой собачки. Максимум могут ещё добавить к такому слову одну цифру или символ. Хакеры взламывают подобные «шифры», используя заранее подготовленные пароли, они загружаются из спец. словарей. Подбор пароля данным методом не займёт много времени. Естественно, что о надёжности таких паролей говорить не приходится.
ПО использующее метод полного перебора в отличии от предыдущего метода подбирает ключ, используя не какой-либо словарь, в соответствии с которым можно взломать простой пароль, а огромное количество всех возможных комбинаций. В данном случае всё зависит только от сложности пароля и числа символов в нём.
В связи с этим представляется возможным оценить надёжность пароля исходя из его длинны, используемых символов и вычислительных возможностей современных компьютеров.
Для ориентировки будем исходить из следующего:
Исходя из этого, в расчётах можно ориентироваться на скорости в 100, 1000 и 10000 паролей в секунду.
Для определения времени, требующегося на взлом ключа полным перебором, необходимо число знаков, используемых в пароле, возвести в степень равную числу символов пароля. Затем разделить полученный результат на скорость подбора ключей (будем ориентироваться на 100, 1000 и 10000 паролей/сек.).
Так если пароль состоит из 8-ми символов, включающих латинские буквы (с различием строчных и прописных) и цифры от 0 до 9, т.е. имеем 36 различных символов, тогда число возможных комбинаций ключа 36^8=2821109907456. Следовательно время на полный перебор (в худшем случае) составит около 900, 90 и 9 лет для скоростей 100, 1000 и 10000 паролей/сек. соответственно. Данный расчёт произведён для «худшего случая», т.е. если искомый пароль окажется последним в переборе. Поэтому среднее время подбора пароля можно принять равным половине полученных значений (450,45 и 4,5 года!). При увеличении числа символов пароля и добавлении его к алфавиту спец. символов время для его взлома возрастает в геометрической прогрессии.
Для взлома выше указанного восьмисимвольного пароля брутфорсом за месяц потребовалась бы скорость равная 1100000 паролей/сек.
Из приведенных выше рассуждений можно сформулировать требования к надёжному паролю:
Для «придумывания» паролей, удовлетворяющих данным требованиям, существуют спец. программы — генераторы паролей. Однако лучше будет составить пароль самостоятельно, так как генераторы паролей могут содержать свои программные уязвимости.
Для внесения ясности в данный вопрос необходимо определиться с методами взломов. Можно выделить следующие методы взлома:
- социальная инженерия;
- перехват трафика;
- перехват нажатых клавиш;
- перебор популярных паролей (перебор по словарям)
- полный перебор (брутфорс).
Первые три метода к вопросу надёжности пароля непосредственного отношения не имеют.
Метод перебора паролей по словарям. Большое число пользователей в качестве паролей указывают одно слово. Например, название вулкана или кличку любимой собачки. Максимум могут ещё добавить к такому слову одну цифру или символ. Хакеры взламывают подобные «шифры», используя заранее подготовленные пароли, они загружаются из спец. словарей. Подбор пароля данным методом не займёт много времени. Естественно, что о надёжности таких паролей говорить не приходится.
ПО использующее метод полного перебора в отличии от предыдущего метода подбирает ключ, используя не какой-либо словарь, в соответствии с которым можно взломать простой пароль, а огромное количество всех возможных комбинаций. В данном случае всё зависит только от сложности пароля и числа символов в нём.
В связи с этим представляется возможным оценить надёжность пароля исходя из его длинны, используемых символов и вычислительных возможностей современных компьютеров.
Для ориентировки будем исходить из следующего:
- на ПК с процессором AMD Athlon 64 X2 4200+ и Windows XP утилита cRARk продемонстрировала скорость в 80 паролей/сек., а ARCHPR обрабатывал только 60. Используя процессоры IntelCore 2Duo возможно достичь скорости в 150 паролей в секунду и выше.
- при наличии современной видеокарты возможно использование программы igrargpu, которая за счёт вычислительных мощностей видеокарты повышает скорость подбора паролей Rar-архива до 2500 в секунду.
- ничего не стоит на месте и ежегодно компьютеры становятся все быстрей, кроме того для ускорения перебора можно воспользоваться распределённой вычислительной сетью ПК или даже суперкомпьютеров.
Исходя из этого, в расчётах можно ориентироваться на скорости в 100, 1000 и 10000 паролей в секунду.
Для определения времени, требующегося на взлом ключа полным перебором, необходимо число знаков, используемых в пароле, возвести в степень равную числу символов пароля. Затем разделить полученный результат на скорость подбора ключей (будем ориентироваться на 100, 1000 и 10000 паролей/сек.).
Так если пароль состоит из 8-ми символов, включающих латинские буквы (с различием строчных и прописных) и цифры от 0 до 9, т.е. имеем 36 различных символов, тогда число возможных комбинаций ключа 36^8=2821109907456. Следовательно время на полный перебор (в худшем случае) составит около 900, 90 и 9 лет для скоростей 100, 1000 и 10000 паролей/сек. соответственно. Данный расчёт произведён для «худшего случая», т.е. если искомый пароль окажется последним в переборе. Поэтому среднее время подбора пароля можно принять равным половине полученных значений (450,45 и 4,5 года!). При увеличении числа символов пароля и добавлении его к алфавиту спец. символов время для его взлома возрастает в геометрической прогрессии.
Для взлома выше указанного восьмисимвольного пароля брутфорсом за месяц потребовалась бы скорость равная 1100000 паролей/сек.
Из приведенных выше рассуждений можно сформулировать требования к надёжному паролю:
- не содержит имени пользователя, года рождения, названия компании и т.п.;
- состоит как минимум из семи символов;
- содержит строчные и заглавные символы алфавита, цифры и спец. символы.
Для «придумывания» паролей, удовлетворяющих данным требованиям, существуют спец. программы — генераторы паролей. Однако лучше будет составить пароль самостоятельно, так как генераторы паролей могут содержать свои программные уязвимости.