阅读量:0
在PHP中实现AES加密和解密可以使用 PHP 的 OpenSSL 扩展,以下是一个简单的示例:
// 加密函数 function encrypt($data, $key, $iv) { return openssl_encrypt($data, 'aes-256-cbc', $key, OPENSSL_RAW_DATA, $iv); } // 解密函数 function decrypt($data, $key, $iv) { return openssl_decrypt($data, 'aes-256-cbc', $key, OPENSSL_RAW_DATA, $iv); } // 加密 $key = 'YourSecretKey'; $iv = random_bytes(16); // 随机生成一个16字节的初始化向量 $data = 'Hello, World!'; $encrypted = encrypt($data, $key, $iv); // 解密 $decrypted = decrypt($encrypted, $key, $iv); echo '加密前:' . $data . PHP_EOL; echo '加密后:' . base64_encode($encrypted) . PHP_EOL; echo '解密后:' . $decrypted . PHP_EOL;
上面的示例中,首先定义了 encrypt
和 decrypt
两个函数,分别用于对数据进行加密和解密。然后生成了一个 16 字节的随机初始化向量,使用指定的密钥对数据进行加密,并最后解密。
注意:在实际应用中,需要使用安全的方法来存储和传输密钥和初始化向量,以确保数据的安全性。