Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Вопрос к знатокам PHP и Apache
цитата
20/12/07 в 15:24
 Kobalt
помогите плз с решением, если оно вообще существует
Вводные
два сервера А и Б
на сервере А ежеминутным парсингом файла .htpasswd создается Mysql база с полями login password (поле password - хеш)
на сервере Б форум IPB с возможность авторизации через внешнюю mysql базу. На незашифрованых login:password - работает без проблем.
Код:
function _compare_passwords( $password, $remote_member )
   {
      if ( ($password) == $remote_member[ REMOTE_FIELD_PASS ] )
      {
         return TRUE;
      }
      else
      {
         return FALSE;
      }
   }




Возможно ли вообще при этих условиях использовать php для проведения http аутентификации? И корректной авторизации пользователя.
цитата
20/12/07 в 18:39
 dDan
не хуя не понял задачи.
цитата
20/12/07 в 18:55
 Kobalt
объясню
Код:
function _compare_passwords( $password, $remote_member )
   {
      if ( ($password) == $remote_member[ REMOTE_FIELD_PASS ] )
      {
         return TRUE;
      }
      else
      {
         return FALSE;
      }
   }

такая проверка пароля срабатывает если пара login:password не хэшировались вообще
Код:
function _compare_passwords( $password, $remote_member )
   {
      if ( ($password) == $remote_member[ REMOTE_FIELD_PASS ] )
      {
         return TRUE;
      }
      else
      {
         return FALSE;
      }
   }

такая проверка пароля срабатывает если было реализовано хэширование методом md5


меня интересует как проверить пароль если он шифровался средствами апача

ps сори за сумбур- я не програмист
цитата
20/12/07 в 19:33
 dm
никак
апач сам ничего не шифрует, использует системные
man 3 crypt
читать
цитата
20/12/07 в 19:43
 lega_cobra
Kobalt писал:
меня интересует как проверить пароль если он шифровался средствами апача


Лидер символы апачевского хеша $apr1$ вместо $1$ - вот и все отличие. Если твоя функция поддержвает их - то и проверять можно.
цитата
21/12/07 в 00:21
 Kobalt
lega_cobra писал:
Лидер символы апачевского хеша $apr1$ вместо $1$ - вот и все отличие. Если твоя функция поддержвает их - то и проверять можно.

можно поподробнее ?
цитата
21/12/07 в 00:38
 lega_cobra
Kobalt писал:
можно поподробнее ?


Подробнее о чем? О том, как делается md5 хеширование? Очень просто. Берется салт - как бы случайная строка, спереди добавляется лидер, и потом при помощи манипуляций с салтом и паролем получаем собственно говоря хеш. Типичный начинается так:

$1$12345678$... и далее собственно хеш

Апачевский так:
$apr1$12345678$... и далее опять хеш.

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


Эта страница в полной версии