Bonjour,
J'utilise le code suivant pour générer de manière sécurisée 4 chiffres aléatoires qui seront affichés dans l'image d'un captcha :
http://pastebin.com/uUuRR3vn
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 <?php /*** Script pour générer 4 chiffres aléatoires qui seront utilisés dans un captcha ***/ $texte = ""; // On génère une séquence aléatoire $random = openssl_random_pseudo_bytes(64).md5("hI4QVLrluGbDKbVtpa4l".time()."Z0"); // On hash avec SHA512 la séquence aléatoire avec d'autres paramètres $hash = hash("SHA512","hiJ9DEZsF3hNk54VnkmM".mt_rand(0,pow(10,6)).time().$random); // On prends les 4 premiers chiffres que l'on rencontre en parcourant le hash ($hash) for($i=0;strlen($texte)<=3;$i++) { if(is_numeric($hash[$i])) { $texte .= $hash[$i]; // On ajoute à $texte le chiffre } } // On affiche les 4 chiffres à l'écran (qui peuvent être utilisés dans l'image d'un captcha par exemple echo $texte; // $texte peut contenir par exemple : 8916 ?>
Pensez-vous que ce code est assez sécurisé pour générer 4 chiffres au hasard ?
N'hésitez pas à commenter si vous avez des suggestions, des conseils, des questions...
Merci.
Partager