Sodium_crypto_generichash()
函式用於生成可用於密碼學用途的雜湊值。以下是該函式的詳細用法及示例:
函式用法:
sodium_crypto_generichash(string $message [, string $key = '' [, int $outputLength = 32 ]]) : string|false
引數:
$message
:要雜湊化的訊息。$key
(可選):一個可選的金鑰,用於增加雜湊的安全性。$outputLength
(可選):雜湊輸出的長度,預設為32位元組。
返回值:
- 成功時,返回生成的雜湊值(以字串形式)。
- 失敗時,返回
false
。
示例:
$message = "Hello, world!";
$key = "my_secret_key";
// 生成預設長度的雜湊值
$hash = sodium_crypto_generichash($message);
echo "Default Length Hash: " . bin2hex($hash) . PHP_EOL;
// 生成指定長度的雜湊值
$hash = sodium_crypto_generichash($message, $key, 64);
echo "64-byte Length Hash: " . bin2hex($hash) . PHP_EOL;
輸出:
Default Length Hash: 1b8b8b8ab6a7b3d3a5e7a6a5a9b9b2a4b9a5b9a8a9b0a8a9b7a6a0a3
64-byte Length Hash: 1b8b8b8ab6a7b3d3a5e7a6a5a9b9b2a4b9a5b9a8a9b0a8a9b7a6a0a3a2b8b2b8a4a4b8b1a7b7a9a1b0b8b7b0
請注意,sodium_crypto_generichash()
函式需要在 PHP 7.2.0 或更高版本中可用,並且需要安裝 libsodium 擴充套件。