PHP使用AES加密解密的方法实例

180it 2022-03-06 AM 601℃ 0条

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);//解密


支付宝打赏支付宝打赏 微信打赏微信打赏

如果文章或资源对您有帮助,欢迎打赏作者。一路走来,感谢有您!

标签: none

PHP使用AES加密解密的方法实例