(PHP 5 >= 5.3.0)
openssl_random_pseudo_bytes — Génère une chaine pseudo-aléatoire d'octets
$length
[, bool &$crypto_strong
] )
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
.
length
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.
crypto_strong
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)