AVR Random Number Generator
Connect up the ADC to a hardware noise source and use software to "whiten" the random numbers if needed.

Here's an AVR-based project that does this: Leon's Mini Portable Random Number Generator (mPRNG)

Depending on how cryptographically secure it needs to be, you could use the noise of a grounded analog input or the "internal temperature sensor" as your randomness seed instead of external hardware.

Update: I later wrote a program for Arduino that uses the chip's timers as an entropy source (the ADC turned out to be useless because the noisy bits are truncated), and this inspired the creation of the Entropy library.

In both cases, the randomness is not from, for instance, the temperature value itself, which only changes slowly, but from the least significant bits, which vary randomly from one read to the next.  I read the value multiple times, once for each bit of output, bitshifting and XORing with the previous read.  XORing a truly random bit with an uncorrelated bit preserves randomness, so the randomness gets spread around to all the bits and it becomes true white noise.  Your bit rate will not be very high, though, since you only get one bit of output per acquisition time or timer cycle.  With the timer method, I was getting about 64 bit/s.