Я встречал довольно много сайтов, которые либо ограничивают длину паролей и / или запрещают определенные символы. Это ограничивает меня, так как я хочу расширить и увеличить пространство поиска моего пароля. Это также дает мне неприятное ощущение, что они могут не хэшироваться.
Есть ли веские причины для установки верхней длины или исключения символов в паролях?
Ответы:
нет
Нет веских причин.
РЕДАКТИРОВАТЬ: Я не могу доказать, что нет веских причин, потому что нельзя доказать отрицательный. Я не могу придумать веских причин для этого - как указывали другие, хэш будет одинакового размера независимо от размера ввода, а удаление допустимых символов (из контекста вопроса) просто уменьшает пространство состояний. Ответ кажется очевидным: нет веских причин. Может быть много причин, которые звучат хорошо или кажутся хорошими, но это не так. Если бы они были, кто-то уже разместил бы их здесь, или если бы не здесь, то, конечно, на security.stackexchange.com, и этот ответ не был бы так сильно поддержан.
источник
Ограничение длины может быть мерой ограничения времени выполнения хеширования, а также ограничения полосы пропускания (и в любом случае оба они действительно маргинальны). Кроме этого, нет веских причин, особенно с точки зрения безопасности.
Кто-то может сказать: «Люди легче забудут длинные пароли», но это действительно глупое утверждение, и оно не доходит до сути.
Что касается символов, если вы знаете о возможных проблемах кодирования с передачей и / или переносом данных в будущем (например, вы переключитесь с ASCII на UTF-8 через 2 года), позволяя использовать большее количество символов только для надежности паролей.
источник
Да , есть причина для специальных символов.
Запрещение специальных символов - это скорее вопрос удобства использования, нежели безопасность. Прежде всего, они могут быть изуродованы проблемами кодирования. Во-вторых, даже если вы гарантируете, что всегда будете использовать одну и ту же кодировку, все еще остается проблема устройства ввода. Вы будете зависеть от полной клавиатуры (что исключает большинство мобильных устройств), с той же раскладкой клавиатуры. В дальнейшем различия не только между языками, но и между операционными системами, макеты для Windows, Linux и OSX могут немного отличаться. Так что я вижу хороший повод , чтобы не допустить пароль , как:
√Ω≈ç∫∞§…¬å∑±
.источник
Несколько лет назад в мире безопасности произошел спор, когда клиенты Chase обнаружили, что их пароли не чувствительны к регистру. Оказалось, что их веб-страница была всего лишь интерфейсом к какой-то 30-летней бэкэнд-системе OS / 400, которая имела техническое ограничение, которое игнорировало случай. Исправление этого, очевидно, обойдется в миллионы долларов.
Дело в том, что могут быть дорогие устаревшие причины, по которым пароли более определенной длины запрещены.
(Обратите внимание, что я не оправдываю это оправдание ...)
источник
Большинство банков, отделов ИТ и т. Д., Которые применяют максимальные ограничения на пароли, не делают этого по техническим причинам. Они прекрасно осведомлены о том, как работает хеширование паролей и как хранить сложные пароли. Они налагают эти ограничения, потому что это уменьшает количество обращений в службу поддержки людей, которые забыли свои пароли. Является ли это хорошей причиной для наложения такого рода ограничений? Ни в коем случае. Но, тем не менее, это главная причина.
источник
valid Business reason
(лично я не верю, что есть корреляция)Не все устройства ввода (в аппаратном плане) часто имеют все символы, которые есть на полноценной клавиатуре, или аналогично. Если вы не используете менеджер паролей, вы можете столкнуться с проблемами при вводе такого пароля, не так ли? И Unicode все еще далек (далеко) от стандарта.
источник
Я собираюсь сделать предположение и сказать, что некоторые из этих ограничений связаны с фильтрацией персонажей на их веб-сайте (
& < > #
) для защиты от хакеров. В то время как другие являются идеями с головокружительными идеями, которые приходят из комитетов заостренных волосатых начальников.Я сталкивался с рядом действительно глупых (на мой взгляд) решений по «безопасности». Например, одна крупная инвестиционная компания обрабатывает мои счета IRA, а также мою пенсию. Для того , чтобы сделать какой - либо контакт с пенсией требует от меня ввести мой пароль на телефоне (вы не можете связаться с ними в противном случае). Моя учетная запись брокера / IRA использует буквы (верхний и нижний регистр), а также некоторые знаки препинания - ни один из этих символов не появляется на телефонной клавиатуре. Если вы не можете войти в систему с паролем по телефону, он позволяет сбросить пароль вашей учетной записи брокера на то, что вы можете ввести по телефону.
Моя система начисления заработной платы (для консалтинговой компании, в которой я работаю) требует номеров и только номеров - это позволяет им использовать одну и ту же базу данных независимо от того, звонит ли пользователь (я никогда этого не делал) или использует веб-интерфейс (я использую только это) ,
При этом пришло время сменить пароль в офисе. У них такие сумасшедшие ограничения, что, как я полагаю, потребуется около полдня, чтобы найти пароль, приемлемый для системы: как минимум 2 буквы в верхнем регистре, как минимум 2 буквы в нижнем регистре, как минимум 2 цифры (которые не могут быть +/- 1 из предыдущего пароля), по крайней мере 2 не алфавитных / нецифровых символа, не может совпадать ни с одним из последних 24 паролей, не может содержать строку (вперед или назад), которая является словом (длиной 3 или более букв) в английском ( также пару других языков, которые я не имею разрешения знать). Я думаю, что минимальная длина составляет 10-11 символов.
источник
Одна из причин ограничения количества символов может быть связана с тем, как вводится пароль.
Например, некоторые банки со своими веб-сайтами в интернет-банке запрашивают конкретные символы из пароля, и вы выбираете соответствующие символы в раскрывающемся списке.
Они делают это, по-видимому, так, чтобы клавиатурные шпионы не могли обнаружить нажатие клавиши и, таким образом, знали [символы из] вашего пароля. Хотя я знаю, что существует множество других способов обойти такие меры, например, захват экрана; это все еще эффективно против клавиатурных шпионов.
Если бы им пришлось разрешить все символы, длина выпадающего списка стала бы громоздкой, а также допускала путаницу между похожими персонажами.
источник
Отказ от специальных символов, таких как tab, будет действительным. Вы можете войти или изменить свой пароль с помощью символа табуляции в текстовом режиме, но вы не можете использовать его в графическом интерфейсе или в веб-среде. Символ обратной косой черты также будет представлять некоторые кроссплатформенные проблемы.
Кстати, длинные пароли - это не пароли, а парольные фразы. Ваш средний пользователь не может вспомнить 2Z8d!% G # x, но он может вспомнить «имя моего питомца - собака fido». Более длинный текст труднее взломать с помощью грубой силы, и гораздо менее вероятно, что он будет написан на примечании, прикрепленном к экрану.
источник
Когда люди печатают, они делают ошибки, которые называются «опечатки». Обычно люди видят свои ошибки и исправляют их. Для ввода пароля обычно вы не видите, что набрали, и поэтому не можете исправить свои опечатки. Вы делаете ошибки, не осознавая этого, отправляя свой пароль, и он возвращается как «неверный пароль». Тогда ты попробуй еще раз. Тогда ты попробуй еще раз.
Вы можете думать об этом как о "3 небольших маленьких опечатках, и тогда вы неотличимы от атаки грубой силы". Как системы защищаются от атак методом перебора? Явный ответ « Слишком много попыток, уходите, вы не сможете войти, даже если вы все сделаете правильно »? Экспоненциально увеличивающиеся задержки при вводе пароля, приводящие к тайм-аутам браузера, когда задержка слишком велика, что делает невозможным повторный вход в систему? Подходы бывают разные, но в хорошо продуманной системе всегда есть следствие.
Вы можете думать об этом как «3 незначительных опечатки, и тогда вы получаете какой-то отказ в обслуживании».
Поскольку длина пароля увеличивает риск опечаток (и, следовательно, риск запрета доступа авторизованного лица) увеличивается. Все, что длиннее, чем около 20 символов, будет часто вводиться с ошибками (если пользователь не умен и не ленив и не хранит свой пароль где-то, чтобы они могли «копировать и вставлять», не беспокоясь о опечатках, как хороший текстовый файл на рабочем столе, называемый « пароли»). .txt ").
источник