mcrypt 擴展已經(jīng)過時了大約10年,并且用起來很復雜。因此它被廢棄并且被 OpenSSL 所取代。 從PHP 7.2起它將被從核心代碼中移除并且移到PECL中。
PHP手冊在7.1遷移頁面給出了替代方案,就是用OpenSSL取代MCrypt.
/**
* [AesSecurity aes加密,支持PHP7.1]
*/
class AesSecurity
{
/**
* [encrypt aes加密]
* @param [type] $input [要加密的數(shù)據(jù)]
* @param [type] $key [加密key]
* @return [type] [加密后的數(shù)據(jù)]
*/
public static function encrypt($input, $key)
{
$data = openssl_encrypt($input, 'AES-128-ECB', $key, OPENSSL_RAW_DATA);
$data = base64_encode($data);
return $data;
}
/**
* [decrypt aes解密]
* @param [type] $sStr [要解密的數(shù)據(jù)]
* @param [type] $sKey [加密key]
* @return [type] [解密后的數(shù)據(jù)]
*/
public static function decrypt($sStr, $sKey)
{
$decrypted = openssl_decrypt(base64_decode($sStr), 'AES-128-ECB', $sKey, OPENSSL_RAW_DATA);
return $decrypted;
}
}
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。