在PHP中,可以使用openssl庫來實現AES加密和解密。以下是一個示例代碼:
function aesEncrypt($data, $key, $iv) {
$encrypted = openssl_encrypt($data, 'AES-128-CBC', $key, OPENSSL_RAW_DATA, $iv);
return base64_encode($encrypted);
}
function aesDecrypt($encryptedData, $key, $iv) {
$decrypted = openssl_decrypt(base64_decode($encryptedData), 'AES-128-CBC', $key, OPENSSL_RAW_DATA, $iv);
return $decrypted;
}
$key = '0123456789abcdef'; // 密鑰,必須是16字節
$iv = '1234567890abcdef'; // 初始化向量,必須是16字節
$plainText = 'Hello, World!';
$encryptedData = aesEncrypt($plainText, $key, $iv);
echo 'Encrypted: ' . $encryptedData . "\n";
$decryptedData = aesDecrypt($encryptedData, $key, $iv);
echo 'Decrypted: ' . $decryptedData . "\n";
注意,以上代碼中的密鑰和初始化向量(IV)都必須是16字節長度的字符串。在實際使用中,請根據情況自行生成安全的密鑰和IV。
此外,請確保PHP的openssl擴展已啟用,可以通過檢查php.ini文件或運行phpinfo()函數來確認。