查詢

sodium_crypto_kdf_derive_from_key()函式—用法及示例

「 從一個金鑰派生出一個新的金鑰 」


函式名稱:sodium_crypto_kdf_derive_from_key()

函式功能:這個函式用於從一個金鑰派生出一個新的金鑰。

適用版本:PHP 7.2.0及以上版本。

語法:sodium_crypto_kdf_derive_from_key(int $subkeyLength, int $subkeyId, string $context, string $key) : string

引數:

  • $subkeyLength(必需):指定要派生出的子金鑰的長度(以位元組為單位)。
  • $subkeyId(必需):指定要派生出的子金鑰的識別符號(一個整數)。
  • $context(必需):指定派生過程的上下文(一個字串)。
  • $key(必需):要派生的金鑰(一個字串)。

返回值:返回派生出的子金鑰(一個字串)。

示例:

$key = sodium_crypto_secretbox_keygen(); // 生成一個隨機的金鑰
$subkeyLength = 32; // 子金鑰長度為32位元組
$subkeyId = 1; // 子金鑰識別符號為1
$context = "example"; // 上下文為"example"

$subkey = sodium_crypto_kdf_derive_from_key($subkeyLength, $subkeyId, $context, $key);

echo bin2hex($subkey); // 輸出派生出的子金鑰的十六進位制表示

在上面的示例中,我們首先生成一個隨機的金鑰,然後使用sodium_crypto_kdf_derive_from_key()函式從該金鑰派生出一個子金鑰。子金鑰的長度為32位元組,識別符號為1,上下文為"example"。最後,我們使用bin2hex()函式將派生出的子金鑰轉換為十六進位制表示並輸出。

補充糾錯
熱門PHP函式
分享連結