Using a Plasma Globe to generate real random numbers I have been thinking how to easily generate real random numbers when I cam across the small USB-powered Plasma globe. My idea would be to place it in front of an light sensor and read the sensor's values with an Arduino microcontroller. 
Does this approach make sense? Would I need to convert the sensor data in some way? 
 A: I know this question is a couple years old, but I wanted to provide some cryptanalysis on your question. I am not a cryptographer, but I am a mathematician and computer scientist, so perhaps I can provide some insight.
Plasma globes can provide quantum randomness, due to the ionized gas trapped in the globe. Due to Heisenberg's uncertainty principle, the quantum state cannot be calculated without changing it. As such, a plasma globe is a perfect generator for random numbers.
So the question is then: how do you capture the randomness? As you mentioned, you could set up light sensors to capture the photons and calculate their position, lumens, and duration with an Arduino. However, you want to be careful that the light sensors would not interfere with the state of the ionization in the globe. Further, you need to guarantee that your generator is unbiased.
To discuss bias in a random number generator, let's assume that registering a photon during a delta of time produces a '1' and not registering a photon during that same time delta produces a '0'. After sampling say 100k bits, what does your distribution look like with ones and zeros? Do you have more ones? Do you have more zeros? If yes to either of these questions, which will be extremely likely, how do you adjust the distribution, so it's evenly distributed (unbiased) without affecting the quantum randomness?
Thankfully, John von Neumann came up with a solution for debiasing ("software whitening") random number generators. It is done by sampling two consecutive bits. If they are identical, discard them. If their sequence is "01", output a "0", if their sequences is "10", output a 1. As you can imagine, this is expensive, and has an additional HUGE drawback.
First, you are discarding at least 50% of the bits. So, if you can sample random data from your plasma globe at 100 KiBps, then your output will perform at 50 KiBps. Of course, if you discard any identical sequential bits, then your performance will be worse.
Second, there is no guarantee that after von Neumann software whitening, the output will be random. It is theoretically possible to end up with the stream "101010101010..." after whitening, even if the input was actually random (this is unlikely in this situation, of course). Of course, if the input is not random, then the output will not be random. But with quantum states, we're assuming capturing the light from gas ionization is random.
Instead, cryptographers like to run the input through a cryptographically secure primitive, such as a symmetric block cipher like AES-256, or a collision-resistant hashing function like SHA-256. Cryptographically secure primitives are perfect software whitening algorithms, because not only do they debias the input (their output is indistinguishable from true random noise), but for every bit of input, you can get a bit output, remaining highly efficient.
As an example, you could capture 256-bits from your plasma globe with light sensors and an Arduino, hash it with SHA-256, and get 256-bits out. This way, you're not losing any bits, aside from the time it takes to process the SHA-256 digest. Further, the output from SHA-256 can be considered true random, because the input can be considered true random. Not only are each of the 256-bits in the digest unpredictable, but each sequential digest is unpredictable as well.
So, it may be cheaper to just connect a webcam, point it at the globe, process the image with SHA-256, and output the digest as your random numbers. A simple Python script can output about 2 KiBps with this setup.
A: An ADC could convert the signal of a photo diode to a digital value which represents a random number that depends on the brightness of one position on the globe.
But this would not make a good random generator because


*

*most likely a bright spot on the globe will still be bright after short time

*the rate random numbers per second is quite low

*the overall brightness will drift over the time and needs correction

*one would expect areas which are more often bright or dark


But you can try it out and record a few megabytes of random 1 and 0 and run a randomness test on the stream. 
