hash_pbkdf2

(PHP 5 >= 5.5.0)

hash_pbkdf2Génère une clé PBKDF2 dérivée du mot de passe fourni

Description

string hash_pbkdf2 ( string $algo , string $password , string $salt , int $iterations [, int $length = 0 [, bool $raw_output = false ]] )

Liste de paramètres

algo

Nom de l'algorithme de hashage sélectionné (i.e. md5, sha256, haval160,4, etc..). Voir la fonction hash_algos() pour une liste des algorithmes supportés.

password

Le mot de passe à utiliser pour la dérivation.

salt

Le salt à utiliser pour la dérivation.

iterations

Le nombre d'itérations internes pour effectuer la dérivation.

length

La longueur de la clé dérivée à afficher. Si vaut 0, la longueur de l'algorithme choisi sera utilisé.

raw_output

Lorsque définit à TRUE, la fonction affichera les données binaires brutes. Si vaut FALSE, l'affichage se fera en minuscule.

Valeurs de retour

Retourne une chaîne contenant la clé dérivée en minuscule, à moins que le paramètre raw_output ne soit positionné à TRUE auquel cas, la représentation binaire brute de la clé dérivée sera retournée.

Erreurs / Exceptions

Une alerte de type E_WARNING sera émise si l'algorithme n'est pas connu, si le paramètre iterations est inférieur ou égal à 0, si la longueur length est inférieure ou égale à 0 ou si le salt est trop long (plus grand que INT_MAX - 4).

Exemples

Exemple #1 Exemple avec hash_pbkdf2()

<?php
   $password = "password";
   $salt = "salt";
   $hash = hash_pbkdf2("sha256", $password, $salt, 1, 20);
   echo $hash;
   ?>

L'exemple ci-dessus va afficher :

   120fb6cffcf8b32c43e7
   

Notes

Attention

La méthode PBKDF2 peut être utilisée pour hasher des mots de passe pour le stockage (elle est approuvée pour cette utilisation). Cependant, vous devez garder à l'esprit que CRYPT_BLOWFISH est meilleur pour cet usage et nous vous recommandons de l'utiliser au lieu de la fonction crypt().

Voir aussi

  • crypt() - Hachage à sens unique (indéchiffrable)
  • hash() - Génère une valeur de hachage (empreinte numérique)
  • hash_algos() - Retourne une liste des algorithmes de hachage enregistrés
  • hash_init() - Initialise un contexte de hachage incrémental
  • hash_hmac() - Génère une valeur de clé de hachage en utilisant la méthode 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é

LoadingChargement en cours