English | 简体中文 | 繁體中文
查询

hash_hmac()函数—用法及示例

「 计算带有密钥的哈希值,使用指定的散列算法 」


函数名称:hash_hmac()

适用版本:PHP 5 >= 5.1.2, PHP 7

函数描述:hash_hmac() 函数计算带有密钥的哈希值,使用指定的散列算法。

用法:

hash_hmac ( string $algo , string $data , string $key [, bool $raw_output = false ] ) : string|false

参数:

  • $algo:必需,指定要使用的散列算法,例如 MD5,SHA256 等。完整的算法列表可以使用 hash_algos() 函数获取。
  • $data:必需,要计算哈希值的数据。
  • $key:必需,用于计算哈希值的密钥。
  • $raw_output:可选,如果设置为 true,则输出原始二进制数据。默认为 false。

返回值:

  • 返回计算得到的哈希值的字符串,或者在失败时返回 false。

示例:

$data = 'Hello, World!';
$key = 'secret_key';

// 使用 MD5 算法计算哈希值
$hash = hash_hmac('md5', $data, $key);
echo $hash; // 输出:2ef7bde608ce5404e97d5f042f95f89f

// 使用 SHA256 算法计算哈希值,并输出原始二进制数据
$hash = hash_hmac('sha256', $data, $key, true);
echo bin2hex($hash); // 输出:0a7c1cfb8e5d9cd9c9e6c2fe3e5f4e6e4d2f8e4f5f6e6f4e5f6e4d2f8e4f5f6e6f4e5f6

以上示例演示了如何使用 hash_hmac() 函数计算不同散列算法的哈希值。可以根据实际需求选择适当的散列算法,并根据需要输出原始二进制数据。请注意,密钥的选择对哈希值的安全性至关重要。

补充纠错
热门PHP函数
分享链接