Система LavaRand: Як 100 звичайних лава-ламп генерують ключі шифрування для мільйонів сайтів
Інтер’єрний предмет з 1970-х в офісі Cloudflare
В лобі головного офісу Cloudflare в Сан-Франциско стоїть стіна з ~100 лава-ламп. Вони булькають, світяться і створюють гіпнотичні візерунки розплавленого воску. Виглядає як артінсталяція з 1970-х, але насправді це — критична частина інфраструктури безпеки.
Камера безперервно знімає цей хаос, а програмне забезпечення конвертує його в криптографічно стійкі випадкові числа. Ці числа використовуються для генерації ключів шифрування, які захищають мільйони HTTPS-з'єднань по всьому світу.
Чому tech-гігант, що обслуговує 20%+ світового інтернет-трафіку, довіряє декоративним лампам більше, ніж складним алгоритмам? У цій статті й розберемось.
Проблема випадковості
Якість випадкових чисел — це не абстрактна математична концепція. Це різниця між безпечною системою та катастрофічним зламом.
За своєю природою комп'ютери детерміновані. Будь-який програмний генератор випадкових чисел (PRNG) насправді псевдовипадковий — він імітує хаос математичними формулами. Якщо алгоритм можна передбачити, його можна зламати.
Природні ж джерела, як-от лава-лампи, генерують справжній фізичний хаос, який неможливо точно відтворити двічі. Це приклад TRNG (True Random Number Generator) — і один із найбільш візуально ефектних в індустрії.
Як працює LavaRand
LavaRand — це стіна з ~100 лава-ламп різних кольорів, що постійно працює. Над нею встановлена камера, яка записує відео в роздільній здатності 60 кадрів на секунду. Кожна лампа — це незалежне джерело хаосу: віск нагрівається, підіймається, охолоджується, опускається. Турбулентні потоки, конвекція, взаємодія зі стінками — всі ці процеси залежать від мікроскопічних коливань температури та руху молекул, які неможливо передбачити.
У Cloudflare зрозуміли, що один фізичний генератор — це single point of failure. Тому кожен офіс компанії отримав власне рішення. Про Сан-Франциско ми вже знаємо. Ось що мають інші:
- Лондон. Подвійні маятники — хаотичні системи, які демонструють sensitivity to initial conditions (ефект метелика в механіці).

Джерело: Cloudflare Blog
- Сінгапур. Акваріум з рибами — їхні непередбачувані рухи стають джерелом ентропії.
- Лісабон. Стіна з кольоровими хвилями, на які впливають різні рухи.
А під капотом?
Повернімось до лава-ламп. З кожним кадром з камери відбувається цілий ряд кроків:
1. Захоплення. Кожну 1/60 секунди система отримує кадр — матрицю з мільйонів пікселів, де кожен має RGB-значення.
2. Хешування. Всі пікселі конвертуються в послідовність байтів та обробляються криптографічною хеш-функцією SHA-256. Навіть якщо два кадри відрізняються на один піксель, їхні хеші будуть повністю різними.
3. Мікшування. Хеш від лава-ламп не використовується напряму. Він комбінується з системними подіями, апаратними генераторами та попередньо накопиченою ентропією.
4. Kernel entropy pool. Результат записується в /dev/urandom — системний генератор випадкових чисел Linux, який використовується всіма криптографічними операціями на сервері.
Ключовий принцип: Defense in Depth
Жодна лампа не генерує ключ напряму. Навіть якщо хтось якимось чином передбачить рух однієї лампи, або підробить відеопотік, або зламає камеру — це не допоможе. Система використовує:
- Temporal mixing. Дані з різних моментів часу змішуються.
- Spatial mixing. Усі 100 ламп одночасно впливають на результат.
- Source diversity. Лава-лампи — лише одне з багатьох джерел ентропії.
- Cryptographic whitening. SHA-256 гарантує, що навіть часткова передбачуваність входу не впливає на вихід.
Так, виходить, щоб зламати цю систему, атакувальнику потрібно контролювати всі джерела ентропії одночасно, а це майже неможливо.
Архітектура і захист
Розподілена модель
Cloudflare керує сотнями дата-центрів по всьому світу. Якби всі вони залежали від однієї стіни лава-ламп у Сан-Франциско, це створило б катастрофічну вразливість — і проблему з латентністю. Замість цього компанія застосувала розподілену архітектуру ентропії.
Кожна локація має власні джерела випадковості. Це, як ми вже бачили, і лава-лампи, і маятники, і хвилі води.
Вектори атак і контрзаходи
| Атака | Захист |
|---|---|
| Підміна відеопотоку | Навіть якщо атакувальник зламає камеру і почне передавати фейкове відео з передбачуваним вмістом, це лише одне з багатьох джерел. Cryptographic mixing з незалежних джерел гарантує, що результат залишається непередбачуваним. |
| Передбачення руху воску | Теоретично за допомогою комп'ютерного моделювання fluid dynamics можна спробувати передбачити поведінку воску. Але хешування SHA-256 руйнує будь-яку часткову передбачуваність. |
| Компрометація однієї лампи | Припустимо, хтось замінив одну лампу на пристрій з контрольованим LED-підсвічуванням. Система використовує 100+ ламп одночасно — всі піксельні дані змішуються разом. Контроль над однією лампою дає <1% впливу на вихід, що криптографічно нерелевантно. |
| Фізичний доступ до сервера | Якщо атакувальник має root-доступ до сервера, він може читати /dev/urandom напряму — але це вже game over для будь-якої системи. LavaRand захищає від віддалених атак, не від фізичного контролю інфраструктури. |
| Відключення всіх джерел ентропії | DDoS-атака на всі фізичні генератори одночасно? Система падає на fallback PRNG, seed якого був створений раніше з якісної ентропії. Атакувальник не отримує передбачувані числа — він максимум знижує fresh randomness, але не ламає криптографію. |
Cloudflare проєктувала LavaRand з припущення, що кожен окремий компонент може бути скомпрометований. Безпека забезпечується не ідеальністю однієї технології, а композицією незалежних механізмів, де зламати систему можна лише контролюючи всі одночасно — майже нереалістичний сценарій.
Альтернативи в індустрії
Cloudflare — не єдина компанія, яка шукає справжню випадковість за межами алгоритмів. Індустрія експериментує з різними фізичними процесами, кожен з власними trade-offs.
| Метод | Приклад | Переваги | Недоліки |
|---|---|---|---|
| Квантовий шум | ID Quantique, Qrypt | Найвища якість: використовує квантову невизначеність (fundamental randomness з фізики). Сертифікований для military-grade систем. Швидкість до 1 Gbps. | Ціна $10–50 тис. за пристрій. Вимагає спеціалізованого обладнання та експертизи для інтеграції. |
| Радіоактивний розпад | Дослідницький проєкт HotBits (припинив роботу у 2022 році) | Фундаментально довідний: розпад атомів — це квантовий процес, абсолютно непередбачуваний. Не потребує складної обробки сигналу. | Повільно (~100 біт/сек). Радіаційна безпека та регуляторні обмеження. Складно масштабувати. |
| Атмосферний шум | Random.org | Доступний онлайн безплатно. Використовує радіоприймачі для захоплення атмосферних розрядів. Підходить для некритичних додатків. | Залежність від мережі та зовнішнього сервісу. Затримки. Не підходить для high-security систем через можливість MITM-атак. |
| Тепловий шум (hardware RNG) | Intel RDRAND, TPM chips | Вбудовано в процесори. Швидко (billions біт/сек). Стандартизовано. | Існують перестороги щодо бекдорів. Також потребує довіри до виробника заліза. |