Перейти к контенту
  • 0

Определения пароля пользователя


Вопрос

Необходимо проверить правильность введеного пароля.

 

Использую следующий код:

 

$pass1 = $fdata["legacy_password"]; (Поле из таблицы ibf_members)

 

$pass2 = md5($pass); ( где $pass введеный пароль)

 

Ну и далее проверка $pass1 равноли $pass2 . Так вот иногда работает иногда нет. Почему? Пароль точно храниться в поле legacy_password зашифрованный по md5 ?

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

Ну если нет, то где он храниться?

Добавлено в [mergetime]1105962546[/mergetime]

И как сравнить введеный пароль с тем что храниться?

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Попробую найти. Но форум это вам не яндекс, поиск у него просто по уродски работает. Надо знать точную фразу. Легче самому разобраться иногда....
Ссылка на комментарий
Поделиться на других сайтах

  • 0

Да нашел, спасибо. Я просто просматривал все твои посты и нашел потихоньку :D

 

Ну для тех кто найдет эту тему первой вот мой код простой сразу:

 

function generate_compiled_passhash($salt, $md5_once_password)
{
 return md5( md5( $salt ) . $md5_once_password );
}

$pass_hash = $fdata["converge_pass_hash"]; ($fdata содержит данные после выборки из таблицы ibf_members_converge по нужному пользователю.)

$pass_salt  =  $fdata["converge_pass_salt"];

$md5_once_password = md5($pass); ($pass - введенный пользователем пароль)

if ( $pass_hash == generate_compiled_passhash( $pass_salt, $md5_once_password ) )

ну далее делайте то что хотели.

Ссылка на комментарий
Поделиться на других сайтах

  • 0

Lord Maverick

Пароль точно храниться в поле legacy_password зашифрованный по md5 ?

Нет, начиная с версии 2.0.0 пасс шифруется md5+salt. Хранится в таблице members_converge в поле converge_pass_hash + нужен salt из converge_pass_salt.

 

ой, я на полчаса опоздал :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0
Да нашел, спасибо. Я просто просматривал все твои посты и нашел потихоньку ;)

 

Ну для тех кто найдет эту тему первой вот мой код простой сразу:

 

function generate_compiled_passhash($salt, $md5_once_password)
{
 return md5( md5( $salt ) . $md5_once_password );
}

$pass_hash = $fdata["converge_pass_hash"]; ($fdata содержит данные после выборки из таблицы ibf_members_converge по нужному пользователю.)

$pass_salt  =  $fdata["converge_pass_salt"];

$md5_once_password = md5($pass); ($pass - введенный пользователем пароль)

if ( $pass_hash == generate_compiled_passhash( $pass_salt, $md5_once_password ) )

ну далее делайте то что хотели.

В версии 2.1.3 что-нибудь изменилось? У меня этот условие

if ( $pass_hash == generate_compiled_passhash( $pass_salt, $md5_once_password ) )

не выполняется.

 

Был не прав, все ок. :D

Изменено пользователем getz
Ссылка на комментарий
Поделиться на других сайтах

  • 0
имея доступ к мускулу и имея PasswordPro из 304 регеных было вскрыто 283 пасса за две ночи...правда использовалась не одна машина...просто офис весь пускал на ночь пахать...у кого вопросы будут в асю - 161302084
Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.