php Aes加解密方法

使用aes加密传输,并解密的方法

class Aesuntils{

    private $aes_key = "duobakejihxhb220";
    private $aes_vi = "EkpTEA3FbZlbh050";

    function aes_encrypt($content){
        $content = json_encode($content);
        $content = $this->pkcs7_pad($content); //支持openssl_decrypt 解密,
        $encrypted = mcrypt_encrypt(MCRYPT_RIJNDAEL_128,$this->aes_key,$content,MCRYPT_MODE_CBC,$this->aes_vi);
        $based_encrypted = base64_encode($encrypted);
        return $based_encrypted;
    }
    /*
     * mcrypt_encrypt 解密
     * */
    function aes_decrypt($content){
         
        $content = base64_decode($content);
        $encrypted = mcrypt_decrypt(MCRYPT_RIJNDAEL_128,$this->aes_key,$content,MCRYPT_MODE_CBC,$this->aes_vi);
        $str_res = rtrim($encrypted, ""); //由于字符编码问题,解密出来会出现 特殊字符,需要进行移除
        return $str_res;
    }
    function pkcs7_pad($str){
        $len = mb_strlen($str, '8bit');
        $c = 16 - ($len % 16);
        $str .= str_repeat(chr($c), $c);
        return $str;
    }
 
}

使用方法:

use app\api\controller\Aesuntils;

class Wechattiaozhuan{
		
		public function ceshi(){
			$arss = [
            "order_id" => $data['order_id'],
            "act_num" => "19244292",
            "user_id" => $res['user_id']
        ];

	        $Aesuntils = new Aesuntils();
	        $comquery= $Aesuntils->aes_encrypt($arss); //加密字符串
			$desc = $Aesuntils->aes_decrypt($comquery); //解密字符串
		}


}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

金错刀丨

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值