当前位置: 首页> 函数类别大全> hash_hmac

hash_hmac

使用 HMAC 方法生成带有密钥的哈希值
名称:hash_hmac
分类:Hash
所属语言:php
一句话介绍:使用 HMAC 方法生成带有密钥的哈希值

hash_hmac 函数详解

函数名

hash_hmac

适用PHP版本

PHP 5.1.2及以上版本

函数说明

hash_hmac 函数用于计算数据的 HMAC(基于密钥的消息认证码)。HMAC 是一种通过哈希算法和密钥结合产生消息认证码的方法,它可以用于数据完整性校验和认证。

函数语法

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

参数

  • $algo:指定哈希算法,支持多种常见的哈希算法,如 'md5', 'sha256', 'sha512' 等。
  • $data:输入的数据,可以是任何字符串。
  • $key:用于生成HMAC的密钥,通常是一个二进制或字符串形式的密钥。
  • $raw_output(可选):如果设为 true,返回原始二进制数据;如果为 false(默认值),则返回十六进制表示。

返回值

返回计算得到的 HMAC 校验码,类型为字符串。如果发生错误,则返回 false。

示例

以下示例展示了如何使用 hash_hmac 函数来生成一个基于 SHA-256 算法的 HMAC 校验码。

示例代码

$algo = 'sha256';
$data = 'This is a secret message';
$key = 'supersecretkey';
<p>$hmac = hash_hmac($algo, $data, $key);<br>
echo $hmac;<br>

示例代码的说明

在此代码中,我们使用 SHA-256 算法来计算 "This is a secret message" 这个数据的 HMAC 校验码,密钥是 'supersecretkey'。调用 hash_hmac 函数返回计算出的 HMAC 校验码,并将其输出。

同类函数
  • 生成哈希值(消息摘要) hash

    hash

    生成哈希值(消息摘要)
  • 使用 HMAC 方法生成带有密钥的哈希值 hash_hmac

    hash_hmac

    使用HMAC方法生成带有密钥的哈希值
  • 从打开的流向活跃的哈希运算上下文中填充数据 hash_update_stream

    hash_update_stream

    从打开的流向活跃的哈希运算上下文中填充数
  • 结束增量哈希,并且返回摘要结果 hash_final

    hash_final

    结束增量哈希,并且返回摘要结果
  • 使用给定文件的内容生成哈希值 hash_file

    hash_file

    使用给定文件的内容生成哈希值
  • 返回适用于hash_hmac的已注册散列算法列表 hash_hmac_algos

    hash_hmac_algos

    返回适用于hash_hmac的已注册散列
  • 可防止时序攻击的字符串比较 hash_equals

    hash_equals

    可防止时序攻击的字符串比较
  • 生成提供的密钥输入的 HKDF 密钥派生 hash_hkdf

    hash_hkdf

    生成提供的密钥输入的HKDF密钥派生
热门文章