PHP - Funzione mhash_keygen_s2k ()

La funzione mhash_keygen_s2k () può generare una chiave di derivazione per una data password in base a determinati MHASH.

Sintassi

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

La funzione mhash_keygen_s2k () può generare una chiave in base all'hash fornito utilizzando la password fornita dall'utente. Questo è l'algoritmo Salted S2K specificato nel documento OpenPGP.

La funzione mhash_keygen_s2k () può restituire la chiave generata come stringa o false in caso di errore.

Esempio 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";
?>

Produzione

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

Esempio 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);
?>

Produzione

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