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

相关推荐
SRC_BLUE_172 小时前
VulnHub | Breach - 1
开发语言·php·dreamweaver
jingyu飞鸟21 小时前
Centos7系统(最小化安装)安装zabbix7版本详细文章、nginx源代码配置、php源代码、mysql-yum安装
开发语言·php
Q_Q19632884751 天前
python的家教课程管理系统
开发语言·spring boot·python·django·flask·node.js·php
lanbing1 天前
PHP 与 面向对象编程(OOP)
开发语言·php·面向对象
zm1 天前
TCP 粘包
服务器·网络·php
Le_ee1 天前
sqli-labs靶场第七关——文件导出注入
数据库·sql·网络安全·php·sql注入·sqli—labs
zm2 天前
UDP 多点通信
开发语言·php
*neverGiveUp*2 天前
PHP基础知识
开发语言·php
绵山介子推2 天前
IP地址、端口、TCP介绍、socket介绍、程序中socket管理
网络协议·tcp/ip·php·嵌入式软件
sadoshi2 天前
phpstudy的Apache添加AddType application/x-httpd-php .php .php5配置无效的处理方式
开发语言·php·apache