Maybe I'm wrong on this but mt_rand doesn't seem to be random enough. I'm on a PHP 4.04 server and here's my code.. function make_seed() { list($usec, $sec) = explode(' ', microtime()); return (float) $sec + ((float) $usec * 100000); } mt_srand(make_seed()); $randval = mt_rand(); I pulled this directly from php.net and am using it in my script. Am I doing anything wrong here? It's "sorta" random but I can't believe it's totally random. Your thoughts.?