关于php中的aes加密解密

2024-04-18  本文已影响0人  知码客

<?php

/**
 * Created by PhpStorm.
 * User: 白日梦蓝 987916665@qq.com
 * Date: 2023/8/5
 * Time: 21:25
 */
class Aes
{
        private $iv = '密钥偏移量iv';//密钥偏移量IV
        

        private $encryptKey = '密钥key';//AESkey
       


        /**
         * AES/CBC/PKCS5Padding Encrypter
         *
         * @param $str
         * @param $key
         * @return string
         */
        function encryptNew($str)
        {
            $key = $this->encryptKey;

            $iv = $this->iv;
            return bin2hex(openssl_encrypt($str, 'AES-256-CBC', $key, OPENSSL_RAW_DATA, $iv));
        }

        /**
         * AES/CBC/PKCS5Padding Decrypter
         *
         * @param $encryptedStr
         * @param $key
         * @return string
         */
        function decryptNew($encryptedStr)
        {
            $key = $this->encryptKey;

            $iv = $this->iv;
            return openssl_decrypt(hex2bin($encryptedStr), 'AES-256-CBC', $key, OPENSSL_RAW_DATA, $iv);
        }
}

        $aes = new Aes();
        //明文
        $encryptString = 'json字符串';

        //加密
        $decryptString = $aes->encryptNew($encryptString);
        //解密
        $encryptString = $aes->decryptNew($decryptString);


上一篇 下一篇

猜你喜欢

热点阅读