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

相关推荐
wefly201712 分钟前
免安装!m3u8live.cn在线 M3U8 播放器,小白也能快速上手
java·开发语言·python·json·php·m3u8·m3u8在线转换
luanma1509802 小时前
Laravel 10.x新特性全解析
php·laravel
Irene199110 小时前
JavaScript脚本加载的两种方式:defer/async 的区别
前端·javascript·php
luanma15098011 小时前
PHP vs C#:30字秒懂两大语言核心差异
android·开发语言·python·php·laravel
fresh hacker11 小时前
【Linux系统】通用的“系统排障”
linux·运维·服务器·网络·php
luanma15098011 小时前
Laravel 8.X重磅特性全解析
前端·javascript·vue.js·php·lua
luanma15098011 小时前
Laravel 9.x重磅升级:十大新特性解析
php·laravel
zhangren0246811 小时前
PHP vs C++:从Web脚本到系统编程的终极对比
开发语言·c++·php
luanma15098012 小时前
Laravel 7.X核心特性深度解析
android·开发语言·php·lua·laravel
IAUTOMOBILE14 小时前
两大王者-Laravel vs ThinkPHP:PHP 框架终极对决,谁更适合团队或者个人!
开发语言·php·laravel