# mhash_keygen_s2k

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

mhash_keygen_s2k — Génère une clé

Avertissement

Cette fonction est OBSOLÈTE à partir de PHP 8.1.0. Dépendre de cette fonction est fortement déconseillé.

### Description

#[\Deprecated]
mhash_keygen_s2k(
int `$algo`,
string `$password`,
string `$salt`,
int `$length`
): string|false

Génère une clé suivant l'`algo` fourni, en utilisant le mot de passe `password` fourni.

Cette fonction utilise l'algorithme `Salted S2K`, spécifié dans OpenPGP (» RFC 2440).

N'oubliez pas que les mots de passe fournis par les utilisateurs ne sont pas conseillés pour faire des clés cryptographiques, étant donné que les utilisateurs normaux retiennent des mots de passe qu'ils peuvent saisir au clavier. Ces mots de passe utilisent uniquement 6 à 7 des 8 bits d'un caractère (voire moins). Il est vivement recommandé d'appliquer une fonction de transformation (comme celle-ci), à un mot de passe utilisateur.

### Liste de paramètres

`algo`

  L'identifiant du hash utilisé pour créer la clé. Une parmi les constantes `MHASH_hashname`.

`password`

  Mot de passe fourni par l'utilisateur.

`salt`

  Doit être différent et suffisamment aléatoire pour chaque clé que vous générez, afin de créer des clés différentes. Du fait que le paramètre `salt` doit être connu lorsque vous vérifiez les clés, c'est une bonne idée de l'ajouter à la clé. Le paramètre salt doit avoir une longueur de 8 octets, et sera complété de zéro si vous en fournissez un d'une taille inférieure.

`length`

  La longueur de la clé, en octets.

### Valeurs de retour

Retourne la clé générée, sous la forme d'une chaîne de caractères, ou `false` si une erreur survient.

### Historique

Version | Description
--- | ---
8.1.0 | Cette fonction a été rendue obsolète. Utiliser les fonctions `hash_*()` à la place.