2013-10-14 5 views
3

Я проверяю библиотеку PHPass, которая была рекомендована в большом количестве ответов здесь, на SO. Но когда я смотрю на сгенерированных паролей, я вижу что-то вроде этого:PHP Password Hash - PHPass

enter image description here

Теперь некоторые из них являются только 1234, некоторые из них немного сложнее. Некоторые из них действительно сложны (прописные, строчные буквы, символы) и т. Д. Но все же я все время вижу, что первые 7 символов всегда одинаковы, независимо от того, какой пароль. Разве это не легко угадать? Я мало знаю о радужных или словарных атаках, но это выглядит странно. Это обычное дело? Это ошибка? Является ли структура достаточной для использования в производственных условиях?

ответ

2

Это первые символы - это просто «описание» метода хеширования. Благодаря этому вы сможете распознать и повторно использовать этот метод для проверки пароля. Даже на другом сервере или после изменения метода хеширования нового пароля (старые все еще будут распознаны).

Вы можете прочитать об этом приставке и новой здесь http://www.php.net/security/crypt_blowfish.php

+0

ли вы имеете в виду алгоритма используется? Если это так, зачем нужны 7 символов, чтобы это обозначить? Разве ни один персонаж или что-то вроде $ b $ не достигнет этого? –

+0

@DS. Возможно, этого будет достаточно, но не для случая blowfish, потому что ему также нужен параметр 'cost', который находится между вторым и третьим' $ '. –

+0

Спасибо за ссылку. Я искал ненужные вещи. Я также оставлю эту ссылку для всех, кто интересуется этой «стоимостью». http://php.net/manual/en/function.crypt.php –