LINUX.ORG.RU

Проблемы с crypt() после переезда с FreeBSD на Linux


0

0

имеем форум на php (wwwhtreads 5.4.6). пароли хранятся в mysql зашифрованные функцией crypt(). на старом месте форумы работали на FreeBSD 4.3 + php 4.2.3 (+ apache 1.3.27 + mysql 3.23.54) перенес все на Linux (ядро 2.4.18), php 4.3.0 после переезда пароли перестали проходить, юзеры не могут зайти. попробовал поменять (через интерфейс форума) пароль юзеру. посмотрел пароль в базе, там совершенно другое занчение, чем было для такого же пароля на старом месте. т.е. очевидно что в линухе другой алгоритм шифрования.

чтение документации php показало, что есть 4 константы, показывающие какие алгоритмы шифрования доступны для crypt(): CRYPT_STD_DES CRYPT_EXT_DES CRYPT_MD5 CRYPT_BLOWFISH

на фрюхе у меня значения этих констант 1, 1, 1 и 0. а на линухе 1, 0, 1, 0

я предполагаю что на фрюхе использовался алгоритм шифрования ext_des

как сделать что бы в линухе функция crypt() тоже использовала ext_des? есть ли такая библиотека для линуха?

anonymous

не спец в алгоритмах шифрования

на сколько помню crypt() умеет des и md5
а зависти как она его будет криптовать от ключей которые вы ей
подсунете.

anonymous
()

вы в документацию на php загляните. для crypt() нельзя принудительно задать алгоритм шифрования. а даже если бы было можно, повторяю еще раз: в линухе нет ext_des, есть только обычный des

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.