PHP7.1 mcrypt альтернатива

Функция Mcrypt устарела с PHP 7.1.0.

Мои устаревшие функции кодирования / декодирования строки:

$key: secret key $str: string $encoded = base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($key), $str, MCRYPT_MODE_CBC, md5(md5($key)))); $decoded = rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($key), base64_decode($str), MCRYPT_MODE_CBC, md5(md5($key))), "\0"); 

Можете ли вы предложить несколько альтернатив?

Вместо этого вы должны использовать openssl_encrypt . С уважением!

Рассмотрите возможность использования defuse или RNCryptor , они обеспечивают полное решение, поддерживаются и правильны.

Как упоминалось выше, open_ssl является хорошей альтернативой mcrypt. Единственной проблемой, с которой я столкнулся с open_ssl, является то, что она не может использоваться для больших строк.

Я написал сценарий (статический класс), который преодолевает эту проблему (большие строки разбиваются на куски и зашифровываются / дешифруются отдельно в фоновом режиме).

См. Public gist: https://gist.github.com/petermuller71/33616d55174d9725fc00a663d30194ba