【PHP】openssl_encrypt、openssl_decrypt对称加密解密

目录

1.加密解密封装类

2.调用方法

3.打印结果


1.加密解密封装类


<?php
namespace app\common\library;

/**
 * AES加解密
 * Class Client
 * @package common\components\wsd
 */
class Aes
{
    const KEY = "xxxxxxxxxxxx";
    const CIPHER = "AES-128-CBC";

    /**
     * 加密方法
     * @param $data 加密数据
     * @return string  加密结果
     */
    public static function encrypt($data)
    {
        $ivlen = openssl_cipher_iv_length(self::CIPHER);
        $iv = openssl_random_pseudo_bytes($ivlen);
        $encrypted_data = openssl_encrypt($data,self::CIPHER,self::KEY,OPENSSL_RAW_DATA,$iv);
        return base64_encode($encrypted_data.":".$iv);
    }

    /**
     * 解密方法
     * @param $data  解密数据
     * @return false|string  解密结果
     */
    public static function decrypt($data)
    {
        $data = base64_decode($data);
        $parts = explode(":",$data);
        return openssl_decrypt($parts[0],self::CIPHER,self::KEY,OPENSSL_RAW_DATA,$parts[1]);
    }
}

2.调用方法


    public function encry(){
        $url = 'www.bbb.com';
        $params = Aes::encrypt($url);
        echo $params.PHP_EOL;
        $de = Aes::decrypt($params);
        echo $de.PHP_EOL;
    }

3.打印结果


FdGY8YgdLHkVA3VUQGb6yzovREvdSAORAZdRwGjJE3y+
www.bbb.com

相关推荐

  1. 【PHP】openssl_encrypt、openssl_decrypt对称加密解密

    2023-12-16 05:36:03       47 阅读
  2. 几种PHP对称加密解密源码

    2023-12-16 05:36:03       52 阅读
  3. 【C语言】对称密码——栅栏的加密解密

    2023-12-16 05:36:03       39 阅读
  4. RSA非对称加密解密,前端公钥加密后端私钥解密

    2023-12-16 05:36:03       31 阅读
  5. RSA非对称加密

    2023-12-16 05:36:03       48 阅读
  6. 加密算法:RSA非对称加密算法

    2023-12-16 05:36:03       24 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-16 05:36:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-16 05:36:03       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-16 05:36:03       82 阅读
  4. Python语言-面向对象

    2023-12-16 05:36:03       91 阅读

热门阅读

  1. 计算机犯罪与相关法规

    2023-12-16 05:36:03       61 阅读
  2. ctypes --- Python 的外部函数库

    2023-12-16 05:36:03       50 阅读
  3. 【.Net 6.0--通用帮助类--FileHelper】

    2023-12-16 05:36:03       49 阅读
  4. C++实现一些C#接口

    2023-12-16 05:36:03       54 阅读
  5. Git 命令一览

    2023-12-16 05:36:03       40 阅读
  6. 特斯拉第二代机器人:市场期待与看解

    2023-12-16 05:36:03       57 阅读
  7. LeetCode264. Ugly Number II

    2023-12-16 05:36:03       50 阅读