У меня есть система, работающая на PHP версии 5.2.10. К сожалению, первоначальный программист неправильно понял, как реализована функция crypt().
$crypt = crypt(trim($cuPassword), CRYPT_BLOWFISH);
// The programmer thought this is how you configure a blowfish cipher
nb CRYPT_BLOWFISH имеет нулевое значение на этой машине.
Это работает, поскольку создает случайный хэш пароля, например, 0$oZ534I2VvSw.
Сегодня я перенес программное обеспечение на PHP 5.4.9 и обнаружил, что $crypt становится *0, то есть ошибка из-за недопустимой соли.
Моя проблема в том, что у меня есть таблица паролей для входа в систему, которую я больше не могу проверять. Мой вопрос: есть ли способ воссоздать исходный шифр, работавший в версии 5.2? Какой хэш был реализован, когда вы передали «0» в качестве соли?