hash_hmac

(PHP 5 >= 5.1.2, PHP 7, PHP 8, PECL hash >= 1.1)

hash_hmacGénère une valeur de clé de hachage en utilisant la méthode HMAC

Description

hash_hmac(
    string $algo,
    string $data,
    #[\SensitiveParameter] string $key,
    bool $binary = false
): string

Liste de paramètres

algo

Nom de l'algorithme de hachage sélectionné (par exemple : "sha256"). Pour une liste des algorithmes supportés voir hash_hmac_algos().

Note:

Les fonctions de hachage non cryptographiques ne sont pas autorisées.

data

Le message qui sera haché.

key

Clé secrète partagée utilisée pour générer la variance HMAC de l'empreinte numérique.

binary

Lorsqu'il vaut true, la sortie sera des données brutes binaires. Lorsqu'il vaut false, la sortie sera des chiffres hexadécimaux en minuscule.

Valeurs de retour

Retourne une chaîne de caractères contenant l'empreinte numérique calculée en chiffre hexadécimal minuscule à moins que binary soit fixé à true. Dans ce cas, la représentation brute binaire de l'empreinte numérique est retournée.

Erreurs / Exceptions

Lève une exception ValueError si le paramètre algo est inconnu ou n'est pas une fonction de hachage cryptographique.

Historique

Version Description
8.0.0 hash_hmac() lance désormais une exception ValueError si l'algo est inconnu ou n'est pas une fonction de hachage cryptographique ; auparavant, false était retourné à la place.
7.2.0 L'utilisation de fonctions de hachage non cryptographiques (adler32, crc32, crc32b, fnv132, fnv1a32, fnv164, fnv1a64, joaat) a été désactivée.

Exemples

Exemple #1 Exemple avec hash_hmac()

<?php
echo hash_hmac('sha256', 'The quick brown fox jumped over the lazy dog.', 'secret');
?>

L'exemple ci-dessus va afficher :

9c5c42422b03f0ee32949920649445e417b2c634050833c5165704b825c2a53b

Voir aussi

  • hash_hmac_algos() - Return a list of registered hashing algorithms suitable for hash_hmac
  • hash_hmac_file() - Génère une valeur de clé de hachage en utilisant la méthode HMAC et le contenu d'un fichier donné
  • hash_equals() - Comparaison de chaînes résistante aux attaques temporelles