(PHP 5 >= 5.3.0, PHP 7)
openssl_random_pseudo_bytes — Génère une chaine pseudo-aléatoire d'octets
$length
[, bool &$crypto_strong
] ) : string
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.
lengthLa 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.
crypto_strong
Si fourni, détermine si l'agorithme de cryptologie utilisé
était cryptographiquement fort, i.e. sécurisé pour être utilisé avec GPG, les mots
de passe, etc... TRUE si il l'est, 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)