Lava Lamp Random Number Generator

lava lamp

That title is really misleading; this hack doesn’t require a lava lamp… anymore. I initially went googling for a 1996 project at SGI that generated random numbers by taking photos of a lava lamp. The lava lamp was chosen because of its chaotic nature. I was suprised to find that SGI had patented/trademarked the lavarandtm technology. The system required you to use IRIX, took up a lot of space, and because of patents wasn’t easy to implement. In 2000 the engineers behind the original decided to develop an open source alternative know as LavaRnd (note the capital “L” and “R” ;-). This iteration doesn’t use a lava lamp. Its source of chaos is camera with the lens cap on. The gain on the CMOS sensor is cranked all the way up to create a really noisy image. The image data is then sent through an algorithm to generate the random numbers. If you want to see the original project you’re going to have to ask the Wayback Machine.

10 thoughts on “Lava Lamp Random Number Generator

  1. As I thought… Although this is still a neat idea to add an additional level of randomness if on so desires.

    http://www.microsoft.com/mind/0399/flux/flux0399.asp

    “The random number generator integrated in Pentium
    III-based systems uses thermal noise from a resistor to produce a random number that actually is quite random. Thermal noise can be measured by the tiny variances in resistance of a resistor in the silicon. This changing resistance can be a problem for chip designers if the variance is too great, but in this case, the designers have turned the problem into a solution. ”

    http://www.linuxdevices.com/news/NS2267946906.html

    “In contrast to software RNGs or multi-chip hardware solutions, the VIA’s PadLock technology generates entropy-based RNGs for security keys by deriving entropy from electrical noise on the CPU itself.”

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.