PHP 使用密钥加密和解密数据。以下步骤介绍如何进行:使用 openssl_encrypt() 函数并提供数据、算法和密钥来加密数据。使用 openssl_decrypt() 函数和相同的算法、密钥来解密加密的数据。使用 openssl_rand_pseudo_bytes() 函数生成用于加密和解密的密钥。

PHP 中使用密钥加密和解密
PHP 提供了多种加密和解密算法,其中一些算法需要密钥来确保数据的安全性。本文将介绍如何在 PHP 中使用密钥对数据进行加密和解密。
加密
要使用密钥对数据进行加密,可以使用 openssl_encrypt() 函数。该函数接受以下参数:
立即学习“PHP免费学习笔记(深入)”;
-
$data:要加密的数据 -
$cipher:要使用的加密算法,例如 AES-256-CBC -
$key:用于加密的密钥 -
$options:可选的加密选项,例如 OPENSSL_RAW_DATA
以下代码示例演示了如何使用 openssl_encrypt() 函数对数据进行加密:
<code class="php">$data = "Hello, world!"; $key = "12345678901234567890123456789012"; $encryptedData = openssl_encrypt($data, 'AES-256-CBC', $key, OPENSSL_RAW_DATA);</code>
解密
要使用密钥对加密的数据进行解密,可以使用 openssl_decrypt() 函数。该函数接受以下参数:
-
$encryptedData:加密后的数据 -
$cipher:用于加密的加密算法 -
$key:用于解密的密钥 -
$options:可选的解密选项,例如 OPENSSL_RAW_DATA
以下代码示例演示了如何使用 openssl_decrypt() 函数对加密的数据进行解密:
<code class="php">$decryptedData = openssl_decrypt($encryptedData, 'AES-256-CBC', $key, OPENSSL_RAW_DATA);</code>
秘钥生成
为了生成密钥,可以使用 openssl_rand_pseudo_bytes() 函数。该函数生成指定长度的伪随机字节序列,可以安全地用作密钥。
以下代码示例演示了如何使用 openssl_rand_pseudo_bytes() 函数生成密钥:
<code class="php">$key = openssl_rand_pseudo_bytes(32);</code>











