# Lavarand

**Lavarand** was a [hardware random number generator](https://www.edgepedia.org/hardware-random-number-generator) designed at [Silicon Graphics](https://www.edgepedia.org/silicon-graphics) (SGI) that produced random seeds by photographing lava lamps, hashing the digitized images, and feeding the result to a pseudorandom number generator. The name has since become a general label for lava-lamp-based randomness systems, including the LavaRand system that [Cloudflare](https://www.edgepedia.org/cloudflare) has operated since 2017 using a wall of roughly 100 lava lamps in its San Francisco lobby.

| Key fact | Detail |
|---|---|
| Origin | Proposed and built at Silicon Graphics; patented in 1996 as US 5,732,138, "Method for seeding a pseudo-random number generator with a cryptographic hash of a digitization of a chaotic system"<sup>[1](https://patents.google.com/patent/US5732138A/en)</sup> |
| Inventors | Landon Curt Noll, Robert G. Mende, and Sanjeev Sisodiya; patent filed January 29, 1996, granted March 24, 1998, since expired<sup>[1](https://patents.google.com/patent/US5732138A/en)</sup> |
| Original pipeline | Six Lava Lite lamps photographed by a digital camera; the image was compressed by a seven-way SHA-1 hash into a 140-byte seed fed into a Blum Blum Shub generator<sup>[2](https://www.random.org/analysis/Analysis2001.pdf)</sup> |
| Public demo | A website at lavarand.sgi.com demonstrated the technique from 1997 to 2001<sup>[3](https://academia-lab.com/enciclopedia/lavarand/)</sup> |
| Successor | LavaRnd (2000), by Noll and Simon Cooper, produced random numbers from a lens-capped webcam with no lava lamps, and was released as open source in the public domain<sup>[4](https://www.lavarand.org/news/lavadiff.html)</sup> |
| Cloudflare LavaRand | Launched 2017; a camera films the lobby lava-lamp wall, and the video feed is mixed into the entropy pools of production servers as a secondary randomness source<sup>[5](https://blog.cloudflare.com/randomness-101-lavarand-in-production/)</sup> |
| Entropy estimate | Under conservative assumptions (a 100 × 100 pixel image, one bit of attacker uncertainty per color channel), a single frame yields 100 × 100 × 3 = 30,000 bits of entropy<sup>[6](https://blog.cloudflare.com/lavarand-in-production-the-nitty-gritty-technical-details/)</sup> |

## Why lava lamps

Cryptography requires numbers that are unpredictable, not merely statistically well distributed. Computers are deterministic, so practical systems gather a small amount of true randomness from physical measurements and feed it into a cryptographically secure pseudorandom number generator (CSPRNG), which expands a seed of a few hundred bits into a long unpredictable stream<sup>[6](https://blog.cloudflare.com/lavarand-in-production-the-nitty-gritty-technical-details/)</sup>. The flow of the "lava" in a lava lamp is very unpredictable, so filming the lamps is a convenient way to obtain that seed material: an image is just a large number, and it can be hashed and used as CSPRNG input like any other<sup>[5](https://blog.cloudflare.com/randomness-101-lavarand-in-production/)</sup>.

The idea came to Robert Mende at SGI, according to a 1997 account, one afternoon while he "was avoiding work"; he, number theorist Landon Curt Noll, and Sanjeev Sisodiya then built the system<sup>[7](https://www.washingtonpost.com/archive/politics/1997/09/01/cryptography-lava-lamps-outshine-computers/f877a115-387b-4039-ba6b-72d15e6aa372/)</sup>. The patent's claims covered digitizing any chaotic system, hashing the result, and using it to seed a generator, with lava lamps named as the preferred embodiment<sup>[1](https://patents.google.com/patent/US5732138A/en)</sup>.

## The original SGI system

The SGI setup used six Lava Lite lamps of different colors in front of a digital camera that took a snapshot at regular intervals<sup>[7](https://www.washingtonpost.com/archive/politics/1997/09/01/cryptography-lava-lamps-outshine-computers/f877a115-387b-4039-ba6b-72d15e6aa372/)</sup>. Each image, about 921,000 bytes, was compressed into a 140-byte seed using NIST's Secure Hash Standard revision 1 (SHA-1), applied as a seven-way hash in which the seventh hash processed every seventh byte, the sixth every sixth byte, and so on; the seven 160-bit outputs were concatenated into the 140-byte (1,120-bit) value<sup>[2](https://www.random.org/analysis/Analysis2001.pdf)</sup><sup> • </sup><sup>[8](https://crypto.stackexchange.com/questions/46805/how-did-sha-1-feed-blum-blum-shub)</sup>. That seed drove a Blum Blum Shub generator, whose output is unpredictable as long as the seed is<sup>[2](https://www.random.org/analysis/Analysis2001.pdf)</sup>.

A [Trinity College Dublin](https://www.edgepedia.org/trinity-college-dublin) analysis in 2001 noted that predicting the seed would require predicting the entire digital picture, more than 7 million bits, accurately, since any error changes the hash; the site's operators claimed that not even their Cray supercomputer could predict the output<sup>[2](https://www.random.org/analysis/Analysis2001.pdf)</sup>. The lavarand.sgi.com website produced a 4,096-byte block every minute and was often cited as an example of an online random number source alongside HotBits and RANDOM.ORG<sup>[3](https://academia-lab.com/enciclopedia/lavarand/)</sup><sup> • </sup><sup>[9](https://www.random.org/media/NewYorkTimes-2001.html)</sup>.

## LavaRnd, the successor

In 2000 Noll and Simon Cooper built LavaRnd as an open-source alternative, placed in the public domain. Its reference implementation dispenses with lamps entirely: a webcam with its lens cap on, its sensor gain raised, produces thermal and electronic noise that serves as the chaotic source<sup>[4](https://www.lavarand.org/news/lavadiff.html)</sup><sup> • </sup><sup>[10](https://hackaday.com/2005/06/05/lava-lamp-random-number-generator/)</sup>. The pipeline runs in three stages: digitization of the chaotic source, a "Digital Blender" transformation combining parallel SHA-1 hashes with xor-rotate-and-fold operations to destroy structured data, and presentation of the resulting uniformly distributed output<sup>[11](https://www.lavarand.org/what/how-it-works.html)</sup>. A single camera frame typically yielded 340 to 1,420 bytes of random numbers, and the reference implementation produced between 77,477 and 206,443 bits per second on a 1.6 GHz AMD Athlon, compared with about 8,000 bits of seed per second for the original SGI system on a 200 MHz SGI O2<sup>[4](https://www.lavarand.org/news/lavadiff.html)</sup>.

## Cloudflare's LavaRand

Cloudflare launched its own instantiation, spelled LavaRand, in 2017, explicitly inspired by the SGI system<sup>[5](https://blog.cloudflare.com/randomness-101-lavarand-in-production/)</sup>. A wall of about 100 lava lamps in the lobby of the San Francisco office, which the company calls the "Wall of Entropy," is filmed by a camera mounted across the room<sup>[12](https://www.cloudflare.com/en-au/learning/ssl/lava-lamp-encryption/)</sup>. The camera obtains entropy both from the lamps and from random noise in its own photoreceptors; an office server mixes the camera feed with its own entropy system, and a service in a production data center mixes that feed again with local entropy before making it available to any production service<sup>[6](https://blog.cloudflare.com/lavarand-in-production-the-nitty-gritty-technical-details/)</sup>.

**Purpose and use.** LavaRand is a hedge rather than a primary source. Cloudflare's thousands of Linux servers historically drew randomness from local entropy sources such as packet-arrival timing, and LavaRand exists in case those sources are flawed or compromised<sup>[5](https://blog.cloudflare.com/randomness-101-lavarand-in-production/)</sup>. Just after boot, each production machine contacts LavaRand over TLS to obtain a fixed-size chunk of fresh entropy called a beacon, which it writes to `/dev/random`; after that, an attacker would need to compromise both the machine's local entropy sources and the LavaRand beacon to predict `/dev/urandom`<sup>[6](https://blog.cloudflare.com/lavarand-in-production-the-nitty-gritty-technical-details/)</sup>. Because TLS itself needs secure entropy, a chicken-and-egg problem, each machine stores a unique extra random seed alongside its boot-time identity secrets to secure the first TLS connection<sup>[6](https://blog.cloudflare.com/lavarand-in-production-the-nitty-gritty-technical-details/)</sup>.

**Attack surface.** Cloudflare's design analysis lists physical attacks such as training a second camera on the wall, turning off the lamps' power, shining a bright light at the camera, or capping the lens. Only one scenario is fatal: running code on the production service that produces the final entropy feed. In every other case the attacker-controlled feed is mixed with a non-malicious feed the attacker can neither observe nor modify, so the mixed output remains unpredictable<sup>[6](https://blog.cloudflare.com/lavarand-in-production-the-nitty-gritty-technical-details/)</sup>. Obstructions such as people walking past the wall simply add entropy, since they become part of what the camera captures<sup>[12](https://www.cloudflare.com/en-au/learning/ssl/lava-lamp-encryption/)</sup>.

**Expansion.** In 2019, to mark the company's listing on the [New York Stock Exchange](https://www.edgepedia.org/new-york-stock-exchange), Cloudflare recorded footage of lava lamps on the NYSE trading floor and ingested it into LavaRand, mixing it with the company's other entropy sources<sup>[13](https://blog.cloudflare.com/how-cloudflare-and-wall-street-are-helping-encrypt-the-internet-today/)</sup>. By 2022 the system had grown beyond lava lamps: several larger Cloudflare offices host physical entropy installations, such as chaotic pendulums, that have been incorporated into LavaRand, whose output supports TLS for a network handling upwards of 55 million HTTP requests per second<sup>[14](https://blog.cloudflare.com/harnessing-office-chaos/)</sup>.

## Assessment

Lavarand's lasting contribution is architectural rather than the lamps themselves: digitize a chaotic physical process, pass it through a cryptographic hash to destroy structure and bias, and use the result to seed a CSPRNG. Commentators have observed that the camera sensor's own noise supplies much of the entropy, which is why the lamp-free LavaRnd works, and that the lamps add office flair as much as bits<sup>[10](https://hackaday.com/2005/06/05/lava-lamp-random-number-generator/)</sup>. The mixing principle, combining several entropy sources so that security survives the compromise of all but one, is the property Cloudflare cites as the system's real defense<sup>[6](https://blog.cloudflare.com/lavarand-in-production-the-nitty-gritty-technical-details/)</sup>.

## References

1. [US5732138A – Method for seeding a pseudo-random number generator with a cryptographic hash of a digitization of a chaotic system, Google Patents](https://patents.google.com/patent/US5732138A/en)
2. [Louise Foley (2001). Statistical analysis of RANDOM.ORG, including Appendix E.2 on Lavarand.sgi.com, Trinity College Dublin](https://www.random.org/analysis/Analysis2001.pdf)
3. [Lavarand, AcademiaLab](https://academia-lab.com/enciclopedia/lavarand/)
4. [Differences between SGI classic lavarand and our LavaRnd, lavarand.org](https://www.lavarand.org/news/lavadiff.html)
5. [Randomness 101: LavaRand in Production, Cloudflare Blog (November 6, 2017)](https://blog.cloudflare.com/randomness-101-lavarand-in-production/)
6. [LavaRand in Production: The Nitty-Gritty Technical Details, Cloudflare Blog (November 6, 2017)](https://blog.cloudflare.com/lavarand-in-production-the-nitty-gritty-technical-details/)
7. [Cryptography: Lava Lamps Outshine Computers, The Washington Post (August 31, 1997)](https://www.washingtonpost.com/archive/politics/1997/09/01/cryptography-lava-lamps-outshine-computers/f877a115-387b-4039-ba6b-72d15e6aa372/)
8. [How did SHA-1 'feed' Blum Blum Shub, Cryptography Stack Exchange](https://crypto.stackexchange.com/questions/46805/how-did-sha-1-feed-blum-blum-shub)
9. [Connoisseurs of Chaos Offer a Valuable Product: Randomness, The New York Times (June 12, 2001)](https://www.random.org/media/NewYorkTimes-2001.html)
10. [Lava Lamp Random Number Generator, Hackaday (June 5, 2005)](https://hackaday.com/2005/06/05/lava-lamp-random-number-generator/)
11. [LavaRnd: A Cryptographically Sound Random Number Generator, lavarand.org](https://www.lavarand.org/what/how-it-works.html)
12. [How do lava lamps help with Internet encryption?, Cloudflare Learning Center](https://www.cloudflare.com/en-au/learning/ssl/lava-lamp-encryption/)
13. [How Cloudflare and Wall Street Are Helping Encrypt the Internet Today, Cloudflare Blog (2019)](https://blog.cloudflare.com/how-cloudflare-and-wall-street-are-helping-encrypt-the-internet-today/)
14. [Harnessing chaos in Cloudflare offices, Cloudflare Blog (2022)](https://blog.cloudflare.com/harnessing-office-chaos/)

---
*Topic: Encyclopedia › Technology and the built world › Computing and digital systems › Computer hardware › Boards, peripherals & form factors › Peripherals & expansion hardware › Peripherals: overview and lists*

*Initially written Sep 17, 2026 · Reviewed: Sep 30, 2026; Oct 15, 2026 · Edited: Sep 30, 2026; Oct 15, 2026 · Last review: Oct 15, 2026*

*Copyright 2026 EdgeChat AI, a subsidiary of Biostate AI.*

License: Edgepedia Community License 1.0, https://www.edgepedia.org/edgepedia/license
