PHP AES加解密系列

PHP AES加密

使用PHP内置的mcrypt扩展库可以轻松地实现AES加密。

php 复制代码
<?php
function aes_encrypt($data, $key, $iv) {
    $cipher = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', MCRYPT_MODE_CBC, '');
    mcrypt_generic_init($cipher, $key, $iv);
    $encrypted = mcrypt_generic($cipher, $data);
    mcrypt_generic_deinit($cipher);
    mcrypt_module_close($cipher);
    return base64_encode($encrypted);
}

$key = '1234567890abcdef';
$iv = 'fedcba0987654321';
$data = 'Hello World!';
$encrypted = aes_encrypt($data, $key, $iv);
echo $encrypted;
?>

PHP AES解密

使用PHP内置的mcrypt扩展库也可以轻松地实现AES解密。

php 复制代码
<?php
function aes_decrypt($encrypted, $key, $iv) {
    $cipher = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', MCRYPT_MODE_CBC, '');
    mcrypt_generic_init($cipher, $key, $iv);
    $decrypted = mdecrypt_generic($cipher, base64_decode($encrypted));
    mcrypt_generic_deinit($cipher);
    mcrypt_module_close($cipher);
    return trim($decrypted);
}

$key = '1234567890abcdef';
$iv = 'fedcba0987654321';
$encrypted = 'jRd3dw8c5YX2w/oQvhFqfg==';
$decrypted = aes_decrypt($encrypted, $key, $iv);
echo $decrypted;
?>

以上就是PHP AES加解密的简单实现方法。需要注意的是,mcrypt扩展库已经在PHP7.2版本中被废弃,建议使用其他扩展库或者使用PHP7.2以上版本内置的openssl扩展库实现AES加解密。

相关推荐
yanwushu3 小时前
10分钟搭建 PHP 开发环境教程
php·laravel
车载测试工程师11 小时前
车载以太网网络测试-29【SOME/IP-SD】-SD状态机
网络·网络协议·tcp/ip·车载系统·php
还鮟21 小时前
CTF Web PHP弱类型与进制绕过(过滤)
php·ctf
zorro_z21 小时前
PHP语法基础篇(八):超全局变量
php
九分源码1 天前
基于PHP+MySQL组合开发开源问答网站平台源码系统 源码开源可二次开发 含完整的搭建指南
mysql·开源·php
RainSerein1 天前
Laravel8中使用phpword生成word文档
word·php·laravel
pltrue1 天前
Go 重构案例分享:订单创建逻辑重构
go·php
RainSerein1 天前
Laravel8中调取腾讯云文字识别OCR
ocr·php·腾讯云·laravel
杰哥技术分享2 天前
PHP Yii2 安装SQL Server扩展-MAC M4 Pro芯片
开发语言·php
wuk99811 天前
深入理解PHP中的生成器(Generators)
开发语言·php