PHP - Fonction mhash_keygen_s2k ()

La fonction mhash_keygen_s2k () peut générer une clé de dérivation pour un mot de passe donné selon certains MHASH.

Syntaxe

string mhash_keygen_s2k( int $hash , string $password , string $salt , int $bytes )

La fonction mhash_keygen_s2k () peut générer une clé en fonction du hachage donné en utilisant le mot de passe fourni par l'utilisateur. Il s'agit de l'algorithme Salted S2K spécifié dans le document OpenPGP.

La fonction mhash_keygen_s2k () peut renvoyer la clé générée sous forme de chaîne, ou false en cas d'erreur.

Exemple 1

<?php
   $hash03 = MHASH_SHA256;

   $passw = "kda553nh4";
   $salt = "35t4akiiih";
   $byts = 32;

   $resultr03 = mhash_keygen_s2k($hash03, $passw, $salt, $byts);
   $chrr03 = strlen($resultr03);

   $resulth03 = bin2hex($resultr03);
   $chrh03 = strlen($resulth03);

   echo $resultr03 . "<br><br>" . $chrr03 . " characters<br><br>"  . $resulth03 . "<br>" . $chrh03 . " characters";
?>

Production

G�.p��8_��[� �G�X�<?�5j���U6<br><br>32 characters<br><br>47a42e709e97381f5f0e97fa5be91520c347a958fc3c3fc8356ab319fc9e5536<br>64 characters

Exemple 2

<?php
   $hash04 = MHASH_SHA256;

   $passw = "kdap455W07D";
   $salt = openssl_random_pseudo_bytes(32);

   $byts = 32;
   $result04 = mhash_keygen_s2k($hash04, $passw, $salt, $byts);

   echo $result04 . "<br><br>" . bin2hex($result04);
?>

Production

\Xf)UJ���6� "�����O�fB]���<br><br>185c58662915554accc7d336960022d8d2cfc2f74f9b1e6642195dedce92afc9