(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)
hash_hmac_file — Berechnet einen Hash einer Datei mit Schlüssel unter Verwendung von HMAC
algo
Der Name des gewählten Hash-Algorithmus (z. B.
"sha256"). Für eine Liste der unterstützten
Algorithmen, siehe hash_hmac_algos().
Hinweis:
Nicht-kryptografische Hash-Funktionen sind nicht erlaubt.
filenameDie URL der Datei, die gehasht werden soll; fopen-Wrapper werden unterstützt.
keyEin geheimer Schlüssel für die Berechnung der HMAC-Variante des Hashes.
binary
Ist dieser Parameter auf true gesetzt, werden direkt Binärdaten
zurückgegeben, andernfalls werden kleingeschriebene Hexadezimalziffern
zurückgegeben.
Gibt den berechneten Hash als Hexadezimalzahl zurück, außer
binary ist auf true gesetzt. In diesem Fall wird
die binäre Darstellung des Hashes zurückgegeben. Gibt false zurück, wenn
die Datei filename nicht gelesen werden kann.
Löst eine ValueError-Exception aus, wenn
algo nicht bekannt ist oder eine
nicht-kryptographische Hash-Funktion ist.
| Version | Beschreibung |
|---|---|
| 8.0.0 |
Es wird nun eine ValueError-Exception geworfen,
wenn algo unbekannt ist oder eine
nicht-kryptografische Hash-Funktion darstellt; zuvor wurde false
zurückgegeben und eine E_WARNING-Meldung ausgegeben.
|
| 7.2.0 | Die Verwendung von nicht-kryptographischen Hashfunktionen (adler32, crc32, crc32b, fnv132, fnv1a32, fnv164, fnv1a64, joaat) wurde deaktiviert. |
Beispiel #1 hash_hmac_file()-Beispiel
<?php
/* Erstelle die Datei, deren Inhalt gehasht werden soll */
file_put_contents('example.txt', 'Franz jagt im komplett verwahrlosten Taxi quer durch Bayern.');
echo hash_hmac_file('sha256', 'example.txt', 'geheimnis');
?>Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
b34775b66659af83b5e51064aa61e6f09df258b78842b4347e46b5028da8b021