(PHP 5 >= 5.3.0)
openssl_random_pseudo_bytes — Génère une chaine pseudo-aléatoire d'octets
Génère une chaîne de caractères pseudo-aléatoire d'octets, dont la longueur est spécifiée par le paramètre length.
Indique également si l'algorithme fort de cryptologie a été utilisé pour produire ces octets pseudo-aléatoires, en utilisant le paramètre crypto_strong.
La taille désirée pour la chaine d'octets. Un entier positif est demandé. PHP va tenter de transtyper ce paramètre en un entier non nul pour l'utiliser.
Si fourni, détermine si l'agorithme de cryptologie utilisé doit être fort, i.e. sécurisé lorsqu'utilisé avec GPG, les mots de passe, etc... TRUE s'il le doit, FALSE sinon.
Retourne la chaine d'octets générée en cas de succès, ou FALSE si une erreur survient.
Exemple #1 Exemple openssl_random_pseudo_bytes()
<?php
for ($i = -1; $i <= 4; $i++) {
$bytes = openssl_random_pseudo_bytes($i, $cstrong);
$hex = bin2hex($bytes);
echo "Longueur : Octets : $i et Hex: " . strlen($hex) . PHP_EOL;
var_dump($hex);
var_dump($cstrong);
echo PHP_EOL;
}
?>
L'exemple ci-dessus va afficher quelque chose de similaire à :
Longueur : Octets : -1 et Hex: 0 string(0) "" NULL Longueur : Octets : 0 et Hex: 0 string(0) "" NULL Longueur : Octets : 1 et Hex: 2 string(2) "42" bool(true) Longueur : Octets : 2 et Hex: 4 string(4) "dc6e" bool(true) Longueur : Octets : 3 et Hex: 6 string(6) "288591" bool(true) Longueur : Octets : 4 et Hex: 8 string(8) "ab86d144" bool(true)