当前位置:首页 > PHP

php实现aes

2026-02-28 07:05:17PHP

PHP 实现 AES 加密解密

PHP 提供了 openssl_encryptopenssl_decrypt 函数来实现 AES 加密和解密。以下是常见的 AES 加密模式(如 AES-256-CBC)的实现方法。

php实现aes

AES 加密

function encryptAES($data, $key, $iv) {
    $method = 'aes-256-cbc';
    $encrypted = openssl_encrypt($data, $method, $key, OPENSSL_RAW_DATA, $iv);
    return base64_encode($encrypted);
}

AES 解密

function decryptAES($encryptedData, $key, $iv) {
    $method = 'aes-256-cbc';
    $decrypted = openssl_decrypt(base64_decode($encryptedData), $method, $key, OPENSSL_RAW_DATA, $iv);
    return $decrypted;
}

使用示例

$key = 'your-32-byte-encryption-key-here'; // 32 字节密钥(AES-256)
$iv = 'your-16-byte-iv-here';             // 16 字节初始化向量(IV)

$plaintext = "Hello, AES!";
$encrypted = encryptAES($plaintext, $key, $iv);
$decrypted = decryptAES($encrypted, $key, $iv);

echo "Plaintext: " . $plaintext . "\n";
echo "Encrypted: " . $encrypted . "\n";
echo "Decrypted: " . $decrypted . "\n";

注意事项

  • 密钥长度:AES-256 需要 32 字节密钥,AES-192 需要 24 字节,AES-128 需要 16 字节。
  • IV 长度:初始化向量(IV)必须为 16 字节,且每次加密应使用不同的 IV。
  • 安全存储:密钥和 IV 应安全存储,避免硬编码在代码中。
  • 错误处理:实际使用时需添加错误检查逻辑。

标签: phpaes
分享给朋友:

相关文章

git php实现

git php实现

Git 与 PHP 的集成实现 使用 PHP 执行 Git 命令 通过 PHP 的 exec()、shell_exec() 或 passthru() 函数可以直接调用 Git 命令,适用于服务器端操作…

php实现

php实现

PHP 实现的基本方法 PHP 是一种服务器端脚本语言,广泛用于 Web 开发。以下是 PHP 实现的一些常见方法。 变量与数据类型 PHP 变量以 $ 开头,支持多种数据类型: $nam…

php实现搜索

php实现搜索

PHP实现搜索功能的方法 在PHP中实现搜索功能通常涉及数据库查询和用户输入的匹配。以下是几种常见的实现方式: 使用MySQL LIKE语句 通过简单的LIKE语句实现基础搜索: $searchT…

php 登录实现

php 登录实现

PHP 登录实现 PHP 登录功能通常包括用户认证、会话管理和安全性措施。以下是实现 PHP 登录功能的关键步骤。 数据库准备 创建一个用户表存储用户信息,通常包括用户名、密码(加密存储)和其他必要…

基于php的设计与实现

基于php的设计与实现

PHP 设计与实现的关键要素 环境搭建与框架选择 PHP开发需配置服务器环境(如Apache/Nginx)、PHP版本(建议7.4+)及数据库(MySQL/MariaDB)。主流框架包括Laravel…

php 伪静态实现

php 伪静态实现

PHP 伪静态实现方法 伪静态(URL Rewrite)是一种通过服务器配置将动态URL转换为静态URL的技术,提升URL的可读性和SEO效果。以下是几种常见的实现方式: 使用Apache的mod_…