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

后端开发   发布日期:2023年05月15日   浏览次数:419

PHP实例操作AES的加密和解密,说明一下AES.php文件中所涉及base64_的,西部数码主机为了安全不允许有这种字符,所以在下划线后增加了空格,需要使用的朋友,把空格自己去一下,要不然博文上传不了。

AES.php

  1. <?php
  2. class Aes
  3. {
  4. public $key = '';
  5. public $iv = '';
  6. public function __construct($config)
  7. {
  8. foreach($config as $k => $v){
  9. $this->$k = $v;
  10. }
  11. }
  12. //加密
  13. public function aesEn($data){
  14. return base64_ encode(openssl_encrypt($data, $this->method,$this->key, OPENSSL_RAW_DATA , $this->iv));
  15. }
  16.  
  17. //解密
  18. public function aesDe($data){
  19. return openssl_decrypt(base64_ decode($data), $this->method, $this->key, OPENSSL_RAW_DATA, $this->iv);
  20. }
  21. }
  22. ?>

PHP调用AES加密实际调用:

  1. $aes_config = [
  2. 'key'=>'abc@123456', //加密key
  3. 'iv'=> md5(time(). uniqid(),true), //保证偏移量为16位
  4. 'method'=> 'AES-128-CBC' //加密方式 # AES-256-CBC等
  5. ];
  6.  
  7. $obj = new Aes($aes_config);
  8. $res = $obj->aesEn('你好九品源码');//加密数据
  9. echo $res;
  10. echo '<hr>';
  11. echo $obj->aesDe($res);//解密


以上就是PHP使用AES加密解密的方法实例的详细内容,更多关于PHP使用AES加密解密的方法实例的资料请关注九品源码其它相关文章!