PHP 哈希函数

PHP hash_hmac_file() 函数用于使用 HMAC 方法和给定文件的内容生成带密钥的哈希值.

HMAC 代表基于哈希的消息验证代码。它利用"md5"、"sha256"等加密哈希函数和密钥来返回给定数据的消息摘要哈希。

语法

hash_hmac_file(algo, data, key, binary) 

参数

algo必填。 指定所选哈希算法的名称(即"md5"、"sha256"、"haval160,4"等)。可以使用 hash_algos() 函数找到支持的算法列表。
data必填。 指定描述要散列的文件位置的 URL。它支持 fopen 包装器。
key必需。 指定用于生成消息摘要的 HMAC 变体的共享密钥。
binary可选。 如果设置为 true,则输出原始二进制数据。默认为 false,输出小写十六进制。

返回值

返回包含计算的消息摘要的字符串,作为小写十六进制,除非 binary 设置为 true,在这种情况下,将返回消息摘要的原始二进制表示形式。当 algo 未知或为非加密哈希函数,或者无法读取文件数据时,返回 false。

示例:hash_hmac_file() 示例

下面的示例显示了hash_hmac_file()函数的用法。

<?php
//创建一个文件来计算hash
file_put_contents('test.txt', 'Hello World!');

//使用HMAC方法生成带密钥的哈希值
echo hash_hmac_file('sha1', 'test.txt', 'secretKey');
?> 

上述代码的输出将是:

2635ebd3e76d7fb7570d450cee1a6c45cda83dc2