Ho voluto inserire punti casuali su un'immagine (le stelle nello spazio per qualche piccolo divertente progetto laterale)Perché rand() non è davvero casuale?
Ho questo semplice script.
<?php
$gd = imagecreatetruecolor(1000, 1000);
$white = imagecolorallocate($gd, 255, 255, 255);
for ($i = 0; $i < 100000; $i++)
{
$x = rand(1,1000);
$y = rand(1,1000);
imagesetpixel($gd, round($x),round($y), $white);
}
header('Content-Type: image/png');
imagepng($gd);
?>
Tenete a mente questo è solo per il test, è per questo che ho messo in 100000 for
ciclo in modo che mostra il modello che ho notato emergente. Abbiamo 1 milione di pixel da usare, ancora casuali X e Y crea invece questo modello:
Quindi è tutt'altro che casuale. So che Rand non è casuale, è per questo che non va bene per la crittografia. Ma non trovo informazioni su come funziona e cosa dovrei fare per evitare schemi come questo.
Grazie per le parole chiave che sto cercando. Aiuta davvero Conosco molto PHP e programmazione in generale, ma per la maggior parte sono auto-istruito, quindi mi mancano alcuni termini tecnici. Accetterò questo APPENA POSSIBILE. –
E mt_rand fa davvero il lavoro. Sembra casuale e cambia ogni volta che lo eseguo. http://i.imgur.com/DoeNFB9.png Grazie ancora. –