Generowanie przypadku w tak deterministycznym i ścisłym środowisku jak komputer bywa naprawdę ciężkie, jeżeli nie niewykonalne. Działanie wszelkich urządzeń elektronicznych opiera się na rozmaitych obliczeniach a te, będąc słusznie kojarzone się z matematyką, losowości nie mają w naturze. Czy królowa nauk zasługiwałaby bowiem na swoją koronę, gdyby 2+2 nie dawało zawsze jednoznacznego wyniku? Taki stan rzeczy stanowi poważną przeszkodę do generowanie prawdziwie losowych liczb korzystając jedynie z konkretnych programów.
Pseudolosowość vs. prawdziwa losowość
Generatory liczb losowych dzieli się na dwa rodzaje – generator liczb pseudolosowych (PRNG – pseudo random number generator) oraz generator liczb prawdziwie losowych (TRNG – true random number generator). Pierwszy z nich to generator programowy, który swoje działanie opiera na algorytmach. Ten fakt sugeruje, podobnie jak i sama nazwa, iż liczba nie będzie rzeczywiście losowa.
Aby ustalone z góry obliczenia mające wygenerować losową liczbę mogły w sprawny sposób taką losowość imitować, cały proces zaczyna się od ustalenia zmiennej zwanej ziarnem. Będzie nim np. ilość kliknięć myszką czy czas systemowy. Obie te wartości w szybszym czy wolniejszym tempie stale się zmieniają, zatem mają w sobie jakiś pierwiastek przypadku.
Gdzie wystarcza pseudolosowość?
Ta metoda doskonale sprawdza się chociażby w grach komputerowych, gdyż wirtualny rzut kością nie stanowi o bezpieczeństwie naszego komputera lub korespondencji. W najgorszym scenariuszu finalny boss wymagać będzie kilku podejść więcej. Jednak kiedy, nomen omen, gra toczy się o wyższą stawkę, np. w przypadku generowania kluczy szyfrujących transakcje bankowe, siła tej losowości będzie za niska. Kryptografia wymaga bowiem przypadku z (dosłownie) prawdziwego zdarzenia.
Doskonałym jego źródłem jest fizyczny świat, który nas otacza oraz zachodzące w nim wszelkie zjawiska. choćby przez dłuższy czas przyglądając się koronie pobliskiego drzewa podczas wietrznego dnia, nie sposób zgadnąć jak wyglądać będzie przyszły układ liści.
Cloudflare i estetyczne bezpieczeństwo
Podobną zależność w interesujący sposób wykorzystała firma Cloudflare, projektując swoje “maszyny szyfrujące”. Są nimi wyjątkowe generatory liczb prawdziwie losowych. Działanie takiego modelu jest co do zasady bliźniacze do jego pseudolosowego kolegi, jednak posiada jedną kluczową różnicę. Tutaj wspomniane wcześniej ziarno jest prawdziwie przypadkowe i co najważniejsze, nieprzewidywalne.

W siedzibie Cloudflare w San Francisco postawiono regał z wieloma lampami lawowymi. Każda z nich stale zmienia swój wygląd tworząc tym samym element ewoluującej w nieprzewidywalny sposób całości. Skierowana na regał kamera w określonych odstępach czasu robi zdjęcia, które przetwarzane są na kod binarny stanowiący ziarno dla generatora. Taki zabieg gwarantuje prawdziwą losowość a tym samym znacznie zwiększa bezpieczeństwo szyfrowania.
How a wall of groovy lava lamps help encrypt the internet at the Cloudflare Headquaters in San Francisco. Favorite from 2024. If the site you’re visiting is encrypted by cybersecurity firm Cloudflare, your activity just might be protected by nothing other than a wall of lava lamps. The company has technology that monitors the lava lamps’ random movements and translates them into code that deters hackers from accessing almost 10% of international web traffic. You might think the lava lamps would be locked away for security, but the company actually welcomes the randomness that visitors bring to the code being generated. Visitors can check out the behind the scenes action (and play a part in internet security) at their SF headquarters at 101 Townsend St, San Francisco, CA 94107. #offthebeatenpath #quirky #retro #roadlesstraveled #bucketlist #greenscreen #atlasobscura #science #technology
♬ original sound – lcndcnLondyńskie biuro firmy zamiast lamp używa około 30 podwójnych wahadeł. Wprawione w ruch podwójne wahadło porusza się ruchem chaotycznym. Każde z nich dodatkowo rzuca cień na ścianę, przez co skierowana na nie kamera ma szansę obserwować skomplikowaną i losowo zmienną konfigurację. Tak samo jak w San Francisco, zarejestrowany obraz przetwarzany jest na unikalny ciąg zer i jedynek będący ziarnem.

Najświeższa tego typu instalacja znajduje się w Austin. Tutaj firma zdecydowała się na zawieszone pod sufitem przezroczyste koła i okręgi o rozmaitych barwach. Umiejscowienie wrażliwych na warunki zewnętrzne elementów nie jest przypadkowe. Witają one gości biura znad wejścia. Dzięki temu każde otwarcie i zamknięcie drzwi wpływa na układ bezpowrotnie zmieniając jego formę.
Czy widoczność to zagrożenie?
Można zadać sobie pytanie o poziom bezpieczeństwa takiego rozwiązania, skoro każda z wymienionych konstrukcja jest transparentna i widoczna dla wszystkich obecnych w biurze. Tutaj jednak wyznacznikiem wysokiego poziomy zabezpieczeń nie jest tajność projektu, a gwarancja prawdziwej losowości i nieprzewidywalności generowanych liczb. choćby przyglądając się ruchom wahadeł nie sposób złamać klucz, gdyż ich każdy kolejny układ jest zagadką. Tak naprawdę dowolny element widoczny na obrazie rejestrowanym przez kamerę ingeruje w zdjęcie a tym samym jego zapis binarny dodatkowo potęgując losowość.
Metod generowania liczb prawdziwie losowych jest więcej, chociażby monitorowanie szumu elektrycznego i zamiana go na liczby. Firma Cloudflare jednak podchodzi do tematu w zdecydowanie ciekawszy sposób. Ich zarówno efektowne jak i efektywne konstrukcje świetnie łączą wysoki poziom zabezpieczeń z interesującą formą zapewniającą marketingowe korzyści.