Tuesday November 07, 2017

Cloudflare Uses Lava Lamps to Encrypt the Internet

Cloudflare has revealed an interesting way to ensure randomness when generating encryption keys: lava lamps. Instead of relying on code to generate numbers for cryptographic purposes, lava lamps and their random lights, swirling blobs, and movements are recorded and photographs are taken. This footage is then turned into a "stream of random, unpredictable bytes."

LavaRand is a system that provides an additional entropy source to our production machines. In the lobby of our San Francisco office, we have a wall of lava lamps (pictured above). A video feed of this wall is used to generate entropy that is made available to our production fleet. We're not the first ones to do this. Our LavaRand system was inspired by a similar system first proposed and built by Silicon Graphics and patented in 1996 (the patent has since expired).