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加解密。

相关推荐
夏至春来-美美6 小时前
微信获取access_token授权的两种不同情况
微信·php·微信公众平台
果子⌂8 小时前
Docker-构建镜像并实现LNMP架构
mysql·nginx·docker·容器·架构·php
tomcsdn319 小时前
SMTPman,smtp的端口号是多少全面解析配置
服务器·开发语言·php·smtp·邮件营销·域名邮箱·邮件服务器
Q_Q51100828511 小时前
python的保险业务管理与数据分析系统
开发语言·spring boot·python·django·flask·node.js·php
hrrrrb11 小时前
【TCP/IP】5. IP 协议
网络协议·tcp/ip·php
wkj00111 小时前
php中array($this, ‘loadClass‘)表示啥意思?
android·开发语言·php
CodeWithMe1 天前
【Note】《深入理解Linux内核》 第十九章:深入理解 Linux 进程通信机制
linux·运维·php
wkj0011 天前
php7.4使用 new DateTime;报错 Class DateTime not found
php
亿坊电商1 天前
VUE混合开发,选哪个PHP框架最顺手?
前端·vue.js·php
量子联盟2 天前
原创-基于 PHP 和 MySQL 的证书管理系统,免费开源
开发语言·mysql·php