当前位置: 首页 > news >正文

PHP使用AES进行加解密

前言

对接一个第三方平台,其使用AES对称加密

代码

//方式1
//加密
function enAES($originTxt, $key='Q6Mr6rDpn12iZb'){return base64_encode(openssl_encrypt($originTxt, 'AES-128-ECB',$key, OPENSSL_RAW_DATA));
}//解密
function deAES($originTxt, $key='Q6Mr6rDpn2iOaZl')
{$data = base64_decode($originTxt);return openssl_decrypt($data, 'AES-128-ECB', $key, OPENSSL_RAW_DATA);
}//方式2
class AESTest {private function unpad($text) {return substr($text, 0, strlen($text) - ord(substr($text, -1)));}public function decrypt($data, $key, $iv) {$key = substr(base64_encode($key), 0, 16);$data = base64_decode($data);$iv = substr($iv, 0, 16);$decrypted = openssl_decrypt($data, 'AES-128-CBC', $key, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING, $iv);$data = $this->unpad($decrypted);return $data;}
}$iv = 'A-16-Byte-String';
$key = 'd109090d17c54cedb2df6a251ce86d0baukidkidaukidaukid';
$content = 'p2ZdYGnw4ebE0YGIaMaoEGT4uVUhAXRFX/QqGUy7qZALE+8i9FY/Haeo/yU0umz56VQBGNGPg5k0WuUh7Et4Rb5R70MxrEBggtyHO1k/Svf1kZRzMWQCgaiDriFJQ/iXr7sZbQOCSMTgIa+CvxRjGYkF5mGniz/OtMLLfUXltZ9/toZ9mSa0kLmW2/e59FuUdB6HYX0t06bz+IcHmNAmCw7sy10AH0Eu5J626GY2rZsYyas9x33HxvMsqc9CkOkl8eYMwGb5s9BQnTNDd3FZQf6LPiYadz5aOrbM6r3hHpq5yEv2/u37PRDGFa7ZHNBTKTTUL0rBFZMk4yWEzHqfFv1vT2F5Of6DNoTkBvc+PHAksXI236ZRzgqbQwRQxAvw9qb87pocU3gPLf0dmFGcy/VWcOKxbkUuudKieyu4I=';$aes = new AESTest();
echo $aes->decrypt($content, $key, $iv), PHP_EOL;
http://www.lryc.cn/news/319280.html

相关文章:

  • 20240313寻找集成联调交付的具体方式
  • makefile 学习
  • 释放人工智能的力量:GPU服务器托管和高电机柜托管的关键作用
  • 70后姐妹上海创业,要IPO了
  • React Hooks、useState、useEffect 、react函数状态
  • wsl-oraclelinux 固定ip
  • 性能测试工具——wrk的安装与使用
  • 使用tui-image-editor 图片编辑 标注图片
  • C++面试题和笔试题(五)
  • Mysql:行锁,间隙锁,next-key锁?
  • Grass推出Layer 2 Data Rollup
  • [Java、Android面试]_04_进程、线程、协程
  • MyLisp项目日志:解析用户输入与波兰表达式
  • torch.backends.cudnn.benchmark 作用
  • vue的$nextTick应用场景
  • springboot RestTemplate 发送xml、接收xml、pojo中的属性转为属性
  • Lua-Lua与C++的交互2
  • 学python新手如何安装pycharm;python小白如何安装pycharm
  • Oracle Primavera P6 数据库升级
  • 共享库的创建gcc选项“-shared -fPIC -WI”
  • 微服务:Bot代码执行
  • Python 导入Excel三维坐标数据 生成三维曲面地形图(面) 3、线条平滑曲面但有条纹
  • Vue.js+SpringBoot开发数字化社区网格管理系统
  • java SSM农产品订购网站系统myeclipse开发mysql数据库springMVC模式java编程计算机网页设计
  • vsto快速在excel中查找某个字符串
  • Unity类银河恶魔城学习记录10-1 10-2 P89,90 Character stats - Stat script源代码
  • 西门子TIA中配置Anybus PROFINET IO Slave 模块
  • 在 Rust 中使用 Serde 处理json
  • 【数据库】数据库介绍
  • python 第三方库(PyPinyin\shortuuid\json)