Сгенерируйте пароль SSHA в PHP, чтобы использовать ldap_compare для паролей OpenLDAP SSHA
У меня есть пользователь OpenLDAP с паролем SSHA. Я хочу сравнить его пароль в коде SSHA с паролем, указанным на веб-форме php.
К сожалению, ldap_compare может сравнивать только простые текстовые пароли:
$check = ldap_compare($ldapconn, $dn, $ldap_password, $php_webform_password);
Есть ли способ сгенерировать точно такой же пароль SSHA в PHP на основе обычного текстового пароля, чтобы можно было сравнить пароль SSHA в OpenLDAP?
Или есть какой-нибудь безопасный способ сравнить?
Я знаю "{SSHA}". base64_encode(pack('H*',sha1($php_webform_password))), но соль необходима для кодирования случайным образом, поэтому я не могу сгенерировать то же самое с PHP.
Есть ли решение для этого? Я не хочу использовать простые текстовые пароли в OpenLDAP, поскольку это небезопасно.
Спасибо за помощь.