Следует ли разрешать пробелы в пароле?

Я пробовал разные сайты / продукты, и это, кажется, разделяется довольно равномерно. Windows 7 и Gmail позволяют вставлять пробелы в пароле. Hotmail и Twitter-нет.

хотя разрешение пробелов в пароле увеличивает сложность пароля, похоже, что многие сайты/программы не разрешают их. Есть ли веская причина разрешить / запретить пробелы?

3 ответов


этот вопрос суперпользователя может быть актуальным.

Я думаю, что ваше наблюдение верно: многие веб-системы принимают только буквенно-цифровые символы и подмножество символьных символов (скажем,0-9A-Za-z/_-!), но я думаю, что это просто исторические конвенции. Возможно также, что программисты привыкли к <space> поля, разделяющие символы, а не находящиеся внутри них.

существует также проблема видимости: если вы разрешите несколько подряд пробелы в пароле, может ли пользователь легко подсчитать их? Может ли система даже свернуть их в один (как это сделал бы неуправляемый HTML)? Можно ли легко и быстро идентифицировать даже один символ пробела?

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


основной проблемой, которую я вижу, будет удобство использования для пользователя с точки зрения, например, конечных пространств. Кроме того, если вы начнете разрешать невидимые символы, такие как пространство, вы также можете начать разрешать все виды других невидимых символов, таких как вкладки и так далее. Имхо недостатки перевешивают преимущества. Чтобы сделать пароль действительно безопасным, просто увеличьте длину и позвольте некоторым специальным символам, цифрам и буквам быть конкретными. Например, > 20 цифр это практически небьющийся в этом этапе (по крайней мере с точки зрения стоит усилий..).


вот быстрый способ проверить силу пароля-используйте собственный API пароля учетной записи google:

https://www.google.com/accounts/RatePassword?Passwd=mypwd

на ваш вопрос о пробелах я ввел простой пароль с двумя символами и одним пробелом "t t" . Google присвоил паролю рейтинг 3 из 4. Если я сделаю тот же пароль, но удалю пробелы "tt", полученная оценка будет 1 из 4. По стандарту рейтинга Google, включение пробелов улучшает качество / прочность пароля.