Génère une valeur de hachage (empreinte numérique)

# hash

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

hash — Génère une valeur de hachage (empreinte numérique)

### Description

hash ( string `$algo` , string `$data` [, bool `$raw_output` = `FALSE` ] ) : string

### Liste de paramètres

`algo`

  Nom de l'algorithme de hachage sélectionné (c'est-à-dire "md5", "sha256", "haval160,4", etc.)

`data`

  Message à hacher.

`raw_output`

  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 `raw_output` soit fixé à `TRUE`. Dans ce cas, la représentation brute binaire de l'empreinte numérique est retournée.

### Historique

Version | Description
--- | ---
5.4.0 | L'algorithme tiger utilise désormais l'ordre des octets big-endian. Voir l'exemple ci-dessous.

### Exemples

Exemple #1 Exemple avec hash()

`<?php
echo hash('ripemd160', 'Le rapide goupil brun sauta par dessus le chien paresseux.');
?>`

L'exemple ci-dessus va afficher :

    cdb8426cb020896cea1d040e62a0f8cf9f5b4226

Exemple #2 Exemple avec PHP-5.4 et supérieur

`<?php
function old_tiger($data = "", $width=192, $rounds = 3) {
return substr(
implode(
array_map(
function ($h) {
return str_pad(bin2hex(strrev($h)), 16, "0");
},
str_split(hash("tiger192,$rounds", $data, true), 8)
)
),
0, 48-(192-$width)/4
);
}
echo hash('tiger192,3', 'a-string'), PHP_EOL;
echo old_tiger('a-string'), PHP_EOL;
?>`

Résultat de l'exemple ci-dessus en PHP 5.3 :

    146a7492719b3564094efe7abbd40a7416fd900179d02773
    64359b7192746a14740ad4bb7afe4e097327d0790190fd16

Résultat de l'exemple ci-dessus en PHP 5.4 :

    64359b7192746a14740ad4bb7afe4e097327d0790190fd16
    146a7492719b3564094efe7abbd40a7416fd900179d02773

### Voir aussi

- hash_file() - Génère une valeur de hachage en utilisant le contenu d'un fichier donné
- hash_hmac() - Génère une valeur de clé de hachage en utilisant la méthode HMAC
- hash_init() - Initialise un contexte de hachage incrémental
- md5() - Calcule le md5 d'une chaîne
- sha1() - Calcule le sha1 d'une chaîne de caractères