В английском алфавите 26 букв. С учётом заглавных букв (+26) и цифр (+10) получается 62 символа. Это значит, что для взлома пароля длиной символов, состоящего только из букв и цифр, злоумышленник должен перебрать
комбинаций. Мы привыкли думать в терминах степеней десятки, поэтому, чтобы выразить это число как
, воспользуемся формулой
Для пароля длиной символов
, то есть
вариантов перебора. В году примерно
секунд. Для перебора с частотой один вариант в секунду потребуется 25 миллиардов лет. Ну или давайте более наукообразно: если ваш пароль будут ломать с частотой раз в секунду в течение вашей жизни, а вы с момента создания пароля и до гробовой доски хотите прожить 100 лет, то вероятность, что вас таки взломают равна
. Кажется, этого более чем достаточно. Но не для сайта Expedia.com. Они считают, что пароль
nr75eJ2GBp недостаточно надежный.

Что же они хотят? Минимум 12 символов с использованием специальных символов (+23 итого 85). Получаем
Ещё раз напомню, что — это показатель десятки. Тогда
— это примерно
(4 квадриллиона) лет, если делать попытки раз в секунду. Я даже слова такого не знал. Давайте шутки ради поставим пароль
VladimirPutin1952#. У таких серьёзных парней он точно не пройдёт.

Ах нет... сайт expedia доволен. Считает, что очень хороший, надёжный пароль. Этот пароль, кстати, проходит на всех сервисах, где я его опробовал, а не только на expedia.com.
— Ой, вэй... Таки что ты уже хочешь сказать?
Я таки хочу сказать, что если заставить дурака богу молиться, то он себе лоб разобъёт. Это дикое требование обязательно использовать специальные символы меня просто выбешивает. Оно почти ничего не добавляет к безопасности. Без них число вариантов — , с ними —
. Это значит, что чтобы сделать пароль одинаковой надёжности без спецсимволов надо взять его длину в
раз больше, чем длина пароля со спецсимволами. То есть вместо пароля из 12 символов со спецсимволами, сделать пароль из 13 символов без них (
). А если вам не нравится использование заглавных букв, то для получения такой же надёжности нужно увеличить длину пароля всего лишь в
раза. То есть вместо пароля из 12 символов сделать пароль из 15 символов, но зато без всякого говна со спецсимволами и заглавными буквами. Но без заглавных букв вам в наше время сделать пароль уж точно не дадут, даже если позвоните на прямую линию президенту.
Глобальное помешательство на спецсимволах и заглавных буквах — это тот самый пример дурака, который разбил себе лоб. Все прекрасно понимают, что те, кто пользуется паролями типа "VladimirPutin", ставят заглавные буквы в начале слов, а спецсимволы добавляют в конце или в начале пароля. Показушная борьба за безопасность желанной безопасности не дала. Понятно, что писать программное обеспечение, которое бы серьёзно анализировало пароли на сложность, никому не хотелось, ведь после этого можно получить на линии поддержки тысячи граждан, которые забыли свой супер-надёжный пароль. Но как минимум могли посчитать, какие классы символов присутствуют, и в соответствии с этим требовать минимальную длину пароля, чтобы не заставлять всех использовать спецсимволы. Однако уровень интеллекта тех, кто пишет эти программы, оказался примерно на уровне интеллекта тех, кто пользуется паролем "VladimirPutin", поэтому сделали на отъ*ись.
Комментарии (17)

reset44
27.10.2025 22:18Что-то не в ту сторону стреляем. Попытаюсь понятно для всех...
Попытка в секунду? Сейчас смысла нет перебирать пароли прямо из формы, т.к. при подозрительной активность мамкиного брутфорсера заблочат почти сразу (актуально для +-популярных платформ).
А требования к сложность - это защита от получения паролей из хешей, если злоумышленник получил к ним доступ. Скорость ограничена только количеством доступного железа/электроэнергии. А если твой пароль где-то засветился и попал в базу, то его по хешу восстановят за миллисекунды.
Спец. символы действительно значительно усложняют перебор, т.к. все известные алгоритмы сначала проверяют простые буквенный комбинации, поэтому мат.формулой сложность перебора не посчитать (только сложность самого пароля).
С текущим уровнем мощностей пароли впринцепе изжили себя, никто не будет набирать пароль в 20 символов.
Используем второй фактор везде....

pilG
27.10.2025 22:18Прямо на сайте пытаться подбирать пароль глупо и никто этим не занимается. Обычно получают доступ к базе хэшей паролей и с ним работают

Spyman
27.10.2025 22:18Требовать спец символы все равно как будто почти не имеет смысла.
У атакующего будет маска пароля, по этому если требование - 8+ символов, хотя-бы 1 спец символ, то перебор начнется с 8 букв и спец символа в конце. А учитывая что (по ощущениям) большая часть пользователей (фактически все чьи пароли я знаю) - ставят спец символ в конце т.к. алгоритм придумывания такой - беру минимальный набор букв, ой тут ещё спец символ требуют, ладно пусть будет решетка, то и увеличение устойчивости пароля будет в массовом случае - небольшое. А вот бесит это сильно)

alexxisr
27.10.2025 22:18всё даже хуже - требуя в пароле обязательно разные группы символов, мы уменьшаем сложность пароля. Например, если в пароле обязательно должны быть цифры, то злоумышленнику надо перебрать только 10 вариантов в последней позиции, если предыдущие были нецифры.
Должно быть просто возможно использовать в пароле заглавные/цифры/ да хоть емодзи, тогда хакеру придется перебирать всё в каждой позиции.
С менеджерами паролей длина пароля становится неважна. А без менеджера запомнить уникальный пароль для каждого ресурса нереально.

Spyman
27.10.2025 22:18Ну это все же не совсем верно. Сложность на уменьшается т.к. в описанном вами сценарии (когда последний символ поставили в конце по требованию) - пароль будет на этот символ длиннее. Но в целом согласен))

maslyaev
27.10.2025 22:18Требование спецсимвола это не добавление 12 вариантов к каждому символу парля, а добавление восклицательного знака в конец пароля.

DsSt
27.10.2025 22:18Я не очень понимаю зачастую неадекватные стремления к сложности пароля. Ведь ни один вменяемый интерфейс не позволит перебирать пароли: он либо вводит задержки между попытками, либо блокирует учётную запись после нескольких неудачных вводов. Понятно, что я не о таких паролях говорю: admin, password и т.п.
А если злоумышленнику всё же удалось получить хеши, это зачастую означает, что у него уже есть доступ ко всем внутренним ресурсам. В таком случае подбор паролей по хешам теряет смысл — разве что в надежде использовать их на других сайтах.
Поэтому, на мой взгляд, гораздо важнее использовать не один «мегасложный» пароль, а разные пароли для каждого ресурса — вот это на мой взгляд действительно повышает безопасность.

PerroSalchicha
27.10.2025 22:18Зачем нам спецсимволы в паролях?
Спецсимволы в паролях применяются для того, чтобы пользователи чаще применяли шаблонизацию паролей, а также записывали их на различных носителях, и таким образом, авторы политик безопасности втихаря мстят своим компаниям, ослабляя защиту их ИТ-инфраструктуры.

Spyman
27.10.2025 22:18Шокирующе точный ответ))
Сам вспомнил ситуацию, кода меня на первой работе достали требованиями менять пароль каждую неделю, и при этом проверкой на похожесть преидущего - перешёл на использование стороннего расширения которое снимало мою головную боль, но при этом я конечно его на секьюрность проверил гомеопатически, и фактически сильно ослабил уровень безопасности.

RoasterToaster
27.10.2025 22:18
Иногда мне кажется, что они просто издеваются

Sau
27.10.2025 22:18Очевидно слабый пароль: 78 повторяется два раза и это наверняка год чьего-нибудь рождения, спецсимволы только в конце, ДСТ это известное сокращение от дисплазии соединительной ткани, собака как в адресе электронной почты, о решётке и подчёркивании и говорить нечего.

autoanswerzzz
27.10.2025 22:18вроде бы было опровежение всем это хитро-струганым паролем и признано ошибкой вообще было начинать
sic
Под вечер мысли мудреные приходят, конечно. Изначально это была не защита от онлайн-брутфорса, а от дампа базы паролей и последующего локального перебора. И вот там уже на небольшой gpu ферме из тех ускорителей, которые в майнинге уже даже не нужны, порядка десятков (если не сотен) миллиардов паролей в секунду можно перебрать, если алгоритм какой-нибудь простой, вроде SHA-1.
А так ли мы уж можем доверять ресурсам, что их базу не сольют?
novoselov
Для полноты, вот расчет для 5090 RTX (cтоимость аренды в облаке $0.255/hr или $6.12/day)
https://salad.com/pricing
SHA1 .......... 70245.1 MH/s или 6069.2 TH/day
SHA2-512 ... 10048.6 MH/s или 868.2 TH/day
SHA3-512 ..... 6389.5 MH/s или 552.1 TH/day
https://gist.github.com/Chick3nman/09bac0775e6393468c2925c1e1363d5c
То есть за $1 в день вы получаете почти 1 PHash (10^15 хешей)
Для взлома вашего пароля из 10 символов за день нужно 139 GPU и $850 (а не 25 миллиардов лет)
На крупных фермах раньше было до 100 000 GPU, для взлома 12 знаков со спецсимволами потребуется 235 дней (для 13 знаков без спецсимволов 330 дней).