PHP - Função mhash_keygen_s2k ()

A função mhash_keygen_s2k () pode gerar uma chave de derivação para uma dada senha de acordo com certos MHASH.

Sintaxe

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

A função mhash_keygen_s2k () pode gerar uma chave de acordo com o hash fornecido usando a senha fornecida pelo usuário. Este é o algoritmo Salted S2K especificado no documento OpenPGP.

A função mhash_keygen_s2k () pode retornar a chave gerada como uma string ou false em caso de erro.

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

Resultado

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

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

Resultado

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