Измерители надежности пароля, которые действительно помогают: руководство по UX и NIST
Как разработать поля паролей и индикаторы надежности в соответствии с текущими рекомендациями NIST: длина символов, черные списки, менеджеры вставки и паролей, а также четкая обратная связь.
Главное
Текущее руководство NIST (SP 800-63B) отдает предпочтение длине и черным спискам, а не правилам составления: пароли, используемые сами по себе, должны иметь длину не менее 15 символов, службы должны разрешать не менее 64 символов, и они не должны требовать сочетания типов символов. Хороший измеритель надежности оценивает реальную угадываемость, вознаграждает за длину, объясняет проблемы простыми словами и работает с менеджерами вставки и паролей.
Что теперь говорит NIST
Специальная публикация NIST 800-63B излагает современные правила паролей для проверяющих:
- Пароли, используемые в качестве единственного фактора, должны иметь длину не менее 15 символов; пароли, используемые при многофакторной аутентификации, могут быть короче, но не менее 8.
- Службы должны допускать максимальную длину не менее 64 символов.
- Службы не должны налагать правила композиции, такие как требование сочетания типов символов.
- Новые пароли должны быть проверены по черному списку распространенных, ожидаемых или скомпрометированных значений с указанием причины отклонения.
- Службы должны предлагать рекомендации, которые помогут людям выбрать надежный пароль.
Какой хороший счетчик измеряет
Подсчет типов символов вознаграждает «Пароль1!» и наказывает за длинную парольную фразу. Оценщики, такие как zxcvbn с открытым исходным кодом Dropbox, вместо этого ищут шаблоны, которые используют злоумышленники, распознавая десятки тысяч распространенных паролей, имен и слов, и оценивают, насколько на самом деле можно угадать пароль. Основывайте счетчик на такой оценке, а также на своем черном списке.
Проектирование поля
Маленькие детали решают, добьются ли люди успеха:
- Разрешите вставку и автозаполнение, чтобы менеджеры паролей работали.
- Предлагайте переключатель отображения/скрытия вместо поля подтверждения пароля, где это возможно.
- Покажите требования, прежде чем печатать, а затем наблюдайте за прогрессом по мере того, как люди печатают.
- Объясняйте отказы простыми словами: «Этот пароль встречается в известных нарушениях».
- Не устанавливайте искусственно заниженную максимальную длину.
Движение и обратная связь
Счетчик, который плавно заполняется по мере улучшения пароля, дает обнадеживающую и немедленную обратную связь. Не анимируйте его настолько, чтобы это отвлекало, не используйте только цвет (добавьте текстовую метку, например «Сильный») и избегайте тряски поля, пока люди все еще печатают.
Ключевые принципы
- NIST: 15+ символов для однофакторных паролей, допускается не менее 64 символов.
- Никаких правил композиции; вместо этого сверьтесь с черным списком
- Оценивайте угадываемость (например, с помощью zxcvbn), а не типы символов.
- Разрешить менеджеры вставки и паролей; предложить показать/скрыть
- Цвет счетчика пары с текстовой меткой
Частые вопросы
Источники
- NIST SP 800-63B: Authentication and Authenticator Management — NIST
- zxcvbn: low-budget password strength estimation — Гитхаб (Dropbox)
- Error-Message Guidelines — Nielsen Norman Group