查詢

mcrypt_generic()函式—用法及示例

「 將資料進行加密或解密,使用的是對稱加密演算法 」


函式名:mcrypt_generic()

適用版本:PHP 4 >= 4.0.2, PHP 5, PHP 7

用法:mcrypt_generic() 函式用於將資料進行加密或解密,使用的是對稱加密演算法。在加密和解密之前,需要透過 mcrypt_generic_init() 函式來初始化加密器。

語法:mcrypt_generic(resource $td, string $data): string

引數:

  • $td:加密器的資源識別符號,透過 mcrypt_module_open() 函式獲取。
  • $data:要加密或解密的資料。

返回值:返回加密或解密後的資料,以字串形式。

示例:

$key = "secret_key";
$iv = "iv_value";
$data = "Hello, World!";

$td = mcrypt_module_open('rijndael-256', '', 'cbc', '');

mcrypt_generic_init($td, $key, $iv);

$encryptedData = mcrypt_generic($td, $data);

mcrypt_generic_deinit($td);
mcrypt_module_close($td);

echo "Encrypted data: " . base64_encode($encryptedData);

在上面的示例中,首先定義了加密所需的金鑰和初始向量。然後,使用 mcrypt_module_open() 函式開啟一個加密模組,這裡使用的是 Rijndael-256 演算法。接下來,使用 mcrypt_generic_init() 函式初始化加密器,傳入加密器資源識別符號、金鑰和初始向量。然後,使用 mcrypt_generic() 函式對資料進行加密,返回加密後的資料。最後,使用 mcrypt_generic_deinit() 函式關閉加密器,並使用 mcrypt_module_close() 函式關閉加密模組。最後,透過 base64_encode() 函式將加密後的資料進行編碼輸出。

請注意,示例中的金鑰和初始向量僅用於演示目的,實際使用時應該使用更強大和安全的金鑰。

補充糾錯
上一個函式: mcrypt_generic_deinit()函式
下一個函式: mcrypt_enc_self_test()函式
熱門PHP函式
分享連結