在PHP中实现对称加密的最佳实践是使用openssl_encrypt()
和openssl_decrypt()
函数。以下是一个简单的示例代码:
// 加密函数
function encrypt($data, $key, $iv) {
$encrypted = openssl_encrypt($data, 'AES-256-CBC', $key, 0, $iv);
return base64_encode($encrypted);
}
// 解密函数
function decrypt($data, $key, $iv) {
$decrypted = openssl_decrypt(base64_decode($data), 'AES-256-CBC', $key, 0, $iv);
return $decrypted;
}
// 设置加密密钥和初始向量
$key = 'your_secret_key';
$iv = 'your_iv';
// 要加密的数据
$data = 'Hello, World!';
// 加密数据
$encrypted_data = encrypt($data, $key, $iv);
// 解密数据
$decrypted_data = decrypt($encrypted_data, $key, $iv);
echo "Encrypted data: " . $encrypted_data . "\n";
echo "Decrypted data: " . $decrypted_data . "\n";
在上面的示例中,我们使用AES-256-CBC算法对数据进行加密和解密。确保保护好加密密钥和初始向量,以确保数据的安全性。您可以根据需要修改加密算法和密钥长度来满足您的需求。