PHP使用AES加密解密的方法实例
PHP实例操作AES的加密和解密,说明一下AES.php文件中所涉及base64_的,西部数码主机为了安全不允许有这种字符,所以在下划线后增加了空格,需要使用的朋友,把空格自己去一下,要不然博文上传不了。
AES.php
<?php
class Aes
{
public $key = '';
public $iv = '';
public function __construct($config)
{
foreach($config as $k => $v){
$this->$k = $v;
}
}
//加密
public function aesEn($data){
return base64_ encode(openssl_encrypt($data, $this->method,$this->key, OPENSSL_RAW_DATA , $this->iv));
}
//解密
public function aesDe($data){
return openssl_decrypt(base64_ decode($data), $this->method, $this->key, OPENSSL_RAW_DATA, $this->iv);
}
}
?>
PHP调用AES加密实际调用:
$aes_config = [
'key'=>'abc@123456', //加密key
'iv'=> md5(time(). uniqid(),true), //保证偏移量为16位
'method'=> 'AES-128-CBC' //加密方式 # AES-256-CBC等
];
$obj = new Aes($aes_config);
$res = $obj->aesEn('你好李雷博客');//加密数据
echo $res;
echo '<hr>';
echo $obj->aesDe($res);//解密
如果文章或资源对您有帮助,欢迎打赏作者。一路走来,感谢有您!
txttool.com 说一段 esp56物联 查询128 IP查询