Заменить устаревший mcrypt_cbc с помощью mcrypt_encrypt

У меня есть старый алгоритм для кодирования паролей, которые я хочу использовать с PHP 7

public function encriptarPass($cadena) { $extra = (strlen($cadena)%8); for ($i = $extra; $i < 8; $i++) { $cadena .= chr(8-$extra); } $key = "stack"; $iv = "stack"; return strtoupper(bin2hex(mcrypt_cbc(MCRYPT_3DES, $key, $cadena, MCRYPT_ENCRYPT, $iv))); } 

Я попытался заменить mcrypt_cbc на mcrypt_encrypt, и я получаю эту ошибку:

mcrypt_encrypt (): Ошибка инициализации модуля

Я хочу обновить алгоритм для работы со старыми паролями, хранящимися в базе данных. Я знаю, что должен использовать bcrypt или другой алгоритм, но на данный момент мне нужно обновить этот старый алгоритм

Эти две функции возвратятся.

 function encriptarPass($cadena){ $extra = (strlen($cadena)%8); for($i = $extra; $i < 8; $i++) { $cadena .= chr(8-$extra); } $key = "stack"; $iv = "stack111"; return strtoupper(bin2hex(mcrypt_cbc(MCRYPT_3DES, str_pad($key, 24, "\0"), $cadena, MCRYPT_ENCRYPT, $iv))); } function encriptarPass2($cadena){ $extra = (strlen($cadena)%8); for($i = $extra; $i < 8; $i++) { $cadena .= chr(8-$extra); } $key = "stack"; $iv = "stack111"; return strtoupper(bin2hex(mcrypt_encrypt(MCRYPT_3DES, str_pad($key, 24, "\0"), $cadena, MCRYPT_MODE_CBC, $iv))); } 

Пример:

 echo encriptarPass('test987x'); // Writes 10C9B50682CC21909AC4346CDFC4586E echo encriptarPass2('test987x'); // Writes 10C9B50682CC21909AC4346CDFC4586E