php教程

超轻量级php框架startmvc

PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案

更新时间:2020-03-25 04:08:58 作者:startmvc
前言mcrypt扩展已经过时了大约10年,并且用起来很复杂。因此它被废弃并且被OpenSSL所取代。

前言

mcrypt 扩展已经过时了大约10年,并且用起来很复杂。因此它被废弃并且被 OpenSSL 所取代。 从PHP 7.2起它将被从核心代码中移除并且移到PECL中。

PHP手册在7.1迁移页面给出了替代方案,就是用OpenSSL取代MCrypt.

示例代码


/**
 * [AesSecurity aes加密,支持PHP7.1]
 */
class AesSecurity
{
 /**
 * [encrypt aes加密]
 * @param [type] $input [要加密的数据]
 * @param [type] $key [加密key]
 * @return [type] [加密后的数据]
 */
 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 [要解密的数据]
 * @param [type] $sKey [加密key]
 * @return [type] [解密后的数据]
 */
 public static function decrypt($sStr, $sKey)
 {
 $decrypted = openssl_decrypt(base64_decode($sStr), 'AES-128-ECB', $sKey, OPENSSL_RAW_DATA);
 return $decrypted;
 }
}

可据需求,自行改编。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

php7.1 aes 加密解密 mcrypt module open php aes加解密