📅  最后修改于: 2023-12-03 14:45:16.853000             🧑  作者: Mango
在PHP中,hash_hmac_file()
函数用于计算文件的HMAC散列值。
hash_hmac_file ( string $算法, string $文件名, string $密钥 [, bool $raw_output = FALSE ] ) : string
算法
:所选算法名称。支持的算法如下:文件名
:要计算HMAC值的文件路径。密钥
:要使用的密钥。raw_output
:可选参数,是否返回原始二进制数据。默认为FALSE
。返回所选算法的HMAC散列值。
以下示例展示如何使用hash_hmac_file()
函数计算文件的HMAC散列值:
$file = 'example.txt';
$key = 'my_secret_key';
$hmac_md5 = hash_hmac_file('md5', $file, $key);
$hmac_sha256 = hash_hmac_file('sha256', $file, $key);
$hmac_sha512 = hash_hmac_file('sha512', $file, $key);
echo "HMAC-MD5: " . $hmac_md5 . "\n";
echo "HMAC-SHA256: " . $hmac_sha256 . "\n";
echo "HMAC-SHA512: " . $hmac_sha512 . "\n";
输出结果:
HMAC-MD5: 67f7fb905858e28da9ef47fe1c0a61b8
HMAC-SHA256: e773632a0e6f8c29402169fe9a57157e3242a97a962207d433b1aa33d8056c5e
HMAC-SHA512: 5d5c4a4d4793b1aaf42ad758b815cb05e12e0385b6d2ba5c22d4e4de3d3af6c0ccd6ad4f14c0a6e8fb799c94724745d88a0df2c97f0148d564bafb1e0ae90ce2
$raw_output
参数在计算HMAC散列时影响输出格式。若设置为TRUE
,则输出原始二进制数据;否则输出十六进制值。