Fonctions Hash
PHP Manual

hash

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

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

Description

string hash ( string $algo , string $data [, bool $raw_output = false ] )

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"$datatrue), 8)
            )
        ),
        
048-(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


Fonctions Hash
PHP Manual