hash_hmac_file
(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)
hash_hmac_file — 使用 HMAC 方法和给定文件的内容生成带密钥的散列值
说明
参数
algo
-
要使用的散列算法的名称(例如:
“sha256”
)。 可以在 hash_hmac_algos() 中查看当前支持的算法。注意:
不允许使用非加密哈希函数。
filename
-
要进行散列运算的文件路径,支持 fopen 封装器。
key
-
使用 HMAC 生成信息摘要时所使用的密钥。
binary
错误/异常
如果 algo
未知或非加密散列函数,则抛出
ValueError 异常。
更新日志
版本 | 说明 |
---|---|
8.0.0 |
如果 algo 未知或非加密散列函数,现在抛出
ValueError 异常,之前返回 false 。
|
7.2.0 | 禁用非加密散列函数(adler32、crc32、crc32b、fnv132、fnv1a32、fnv164、fnv1a64、joaat)。 |
示例
示例 #1 hash_hmac_file() 示例
<?php
/* 创建一个要计算散列值的文件 */
file_put_contents('example.txt', 'The quick brown fox jumped over the lazy dog.');
echo hash_hmac_file('sha256', 'example.txt', 'secret');
?>
以上示例会输出:
9c5c42422b03f0ee32949920649445e417b2c634050833c5165704b825c2a53b
参见
- hash_hmac() - 使用 HMAC 方法生成带有密钥的散列值
- hash_hmac_algos() - 返回适用于 hash_hmac 的已注册散列算法列表
- hash_init() - 初始化增量散列运算上下文
- hash_equals() - 可防止时序攻击的字符串比较
+添加备注
用户贡献的备注
此页面尚无用户贡献的备注。
备份地址:http://www.lvesu.com/blog/php/function.hash-hmac-file.php