Как лучше проверить надежность пароля? - PullRequest
43 голосов
/ 16 сентября 2008

Как лучше всего убедиться, что введенный пользователем пароль является надежным паролем в форме регистрации или смены пароля?

Одна идея у меня была (на питоне)

def validate_password(passwd):
    conditions_met = 0
    conditions_total = 3
    if len(passwd) >= 6: 
        if passwd.lower() != passwd: conditions_met += 1
        if len([x for x in passwd if x.isdigit()]) > 0: conditions_met += 1
        if len([x for x in passwd if not x.isalnum()]) > 0: conditions_met += 1
    result = False
    print conditions_met
    if conditions_met >= 2: result = True
    return result

Ответы [ 15 ]

0 голосов
/ 12 января 2009

Я написал небольшое приложение на Javascript. Взгляните: Еще один измеритель пароля . Вы можете скачать исходный код и использовать / изменять его под лицензией GPL. Веселись!

0 голосов
/ 16 сентября 2008

В дополнение к стандартному подходу смешивания букв, цифр и символов, я заметил, что когда я зарегистрировался в MyOpenId на прошлой неделе, программа проверки пароля сообщает вам, основан ли ваш пароль на словарном слове, даже если вы добавляете цифры или заменяете буквы с аналогичными числами (используя ноль вместо «o», «1» вместо «i» и т. д.).

Я был очень впечатлен.

0 голосов
/ 16 сентября 2008

С серией проверок, чтобы убедиться, что она соответствует минимальным критериям:

  • длиной не менее 8 символов
  • содержит хотя бы один не буквенно-цифровой символ
  • не соответствует или не содержит имя пользователя / адрес электронной почты / т. Д.
  • и т.д.

Вот плагин jQuery, который сообщает о надежности пароля (сам не пробовал): http://phiras.wordpress.com/2007/04/08/password-strength-meter-a-jquery-plugin/

И то же самое перенесено в PHP: http://www.alixaxel.com/wordpress/2007/06/09/php-password-strength-algorithm/

0 голосов
/ 16 сентября 2008

Проверка надежности пароля, и если у вас есть время + ресурсы (это оправдано, только если вы проверяете более нескольких паролей), используйте Rainbow Tables.

0 голосов
/ 16 сентября 2008

Если у вас есть время, запустите взломщик паролей против него.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...