Random routines Never, ever, ever, and I mean it, use rand + srand random + srandom erand / drand48 + srand48 nrand / lrand48 + seed48 jrand / mrand48 + lcong48 Instead read /dev/random if you need really strong random numbers read /dev/urandom if you need good pseudo random numbers use the OpenSSL library's RAND_bytes/RAND_pseudo_bytes if you want to be lazy