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

相关推荐
胡八一1 天前
解决PHP未检测到您服务器环境的sqlite3数据库扩展报错
服务器·数据库·php
名字不相符1 天前
攻防世界WEB难度一(个人记录)
学习·php·web·萌新
Q_Q5110082851 天前
python+django/flask的结合人脸识别和实名认证的校园论坛系统
spring boot·python·django·flask·node.js·php
Q_Q5110082851 天前
python+django/flask的选课系统与课程评价整合系统
spring boot·python·django·flask·node.js·php
权泽谦1 天前
PHP 版羊了个羊完整开发实战:逻辑解析 + 三消算法 + 全套接口(附源码)
开发语言·php
数据牧羊人的成长笔记1 天前
Hadoop 分布式计算MapReduce和资源管理Yarn 2
开发语言·php
JaguarJack1 天前
PHP True Async RFC 被拒——原生异步离 PHP 还有多远?
php·服务端
JSON_L1 天前
Fastadmin 使用RabbitMQ队列
rabbitmq·php·fastadmin
Gerardisite2 天前
如何在微信个人号开发中有效管理API接口?
java·开发语言·python·微信·php
last demo2 天前
MariaDB 数据库管理
linux·运维·服务器·数据库·php·mariadb