Dzisiaj omówimy, czym są weryfikowalne funkcje losowe i ich główne cechy. Zostań z nami, aby poznać wszystkie informacje o funkcjach VRF, które mogą Cię zainteresować. Weryfikowalna funkcja losowa, czyli VRF, to po prostu specjalna funkcja kryptograficzna umożliwiająca generowanie pseudolosowych liczb, które mogą być formalnie zweryfikowane za pomocą technik kryptograficznych przez dowolną osobę w dowolnym momencie. Projekt tych funkcji stał się możliwy dzięki pracy Silvio Micali, Michaela Rabina i Salila Vadhana, którzy w 1999 r. zaprezentowali swoją pracę: «Weryfikowalne funkcje losowe„Nazwisko Silvio Micali z pewnością brzmi znajomo, ponieważ to on stworzył blockchain Algorand, który wykorzystuje system VRF w swoim mechanizmie konsensusu Proof of Stake (PoS).”
Dzięki temu możemy zasadniczo zdefiniować VRF jako generator liczb pseudolosowych, którego wynik można zweryfikować w dowolnym momencie, co pozwala nam na audyt i zaufanie, że dane są rzeczywiście wiarygodne i nie zostały w żaden sposób zmanipulowane. Jest to niezwykle ważne w świecie informatyki i technologii blockchain, ponieważ gwarantuje bezpieczeństwo dostarczanych liczb, a zatem ich prawidłowe użycie zapewni bezpieczny wynik.
Przydatność liczb pseudolosowych w informatyce jest szczególnie istotna, zwłaszcza w kryptografii, gdzie bezpieczeństwo całego systemu opiera się na założeniu, że generatory liczb pseudolosowych, zarówno sprzętowe, jak i programowe, są zawsze bezpieczne. W rzeczywistości generator liczb pseudolosowych (PRNG), zwany również potocznie generatorem liczb losowych (RNG), który został w jakikolwiek sposób zmodyfikowany, może zostać łatwo naruszony, co skutkuje poważnymi lukami w zabezpieczeniach urządzeń, które go wykorzystują. Na przykład konsola PlayStation 3 firmy Sony mogła paść ofiarą ataku hakerów z powodu błędu w jej systemie generowania liczb pseudolosowych, gdyż liczby te były przewidywalne.
W blockchainie, gdzie kryptografia stanowi podstawę bezpieczeństwa sieci, generowanie i wykorzystywanie bezpiecznych algorytmów dla generatorów liczb losowych (PRNG) jest kluczowe. W tym momencie VRF-y zaspokajają potrzeby nie tylko blockchainu, ale także inteligentnych kontraktów i innych funkcji spoza blockchainu, które mogą wykorzystać zalety tej technologii.
Charakterystyka VRF
Jak sama nazwa wskazuje, weryfikowalna funkcja losowa jest definiowana przez dwie główne cechy:
- Można to sprawdzić. Oznacza to, że każdy może zweryfikować poprawność liczby losowej wygenerowanej przez VRF. Wystarczy, że porówna wygenerowany dowód kryptograficzny z podaną liczbą, a będzie mógł zweryfikować poprawność wygenerowanego skrótu. Z drugiej strony, tylko posiadacz tajnego klucza VRF może obliczyć skrót; każdy, kto posiada klucz publiczny, może zweryfikować jego poprawność.
- Losowy. Wynik VRF to nieprzewidywalna liczba (rozłożona statystycznie równomiernie w całym wszechświecie możliwości systemu). Ta losowość jest generowana poprzez unikalną kombinację ziarna i klucza prywatnego, chociaż inne źródła, które wpływają na entropię systemu, mogą być również wykorzystane i dodane do testu w celu późniejszej weryfikacji.
W ten sposób VRF-y starają się sprawić, aby algorytmy PRNG generowały dowody kryptograficzne, które mogłyby formalnie potwierdzać ich prawdziwość, a także aby dowody te umożliwiały ich późniejszą weryfikację przez osoby pobierające te liczby.
Przykłady zastosowań VRF
Systemy VRF mają szeroki zakres zastosowań, wśród których możemy wyróżnić:
- Udoskonalenie systemów bezpieczeństwa internetowego. Na przykład generator certyfikatów TLS, infrastruktura PKI lub certyfikaty do szyfrowania DNS mogą używać VRF do generowania bezpiecznych środków komunikacji między stronami, a takie certyfikaty mogą być weryfikowane w trakcie całego procesu przez wszystkie zaangażowane strony.
- Generacja urządzeń podłączonych do sieci (np. IoT) zdolnych do utrzymywania bezpiecznych połączeń za pomocą szyfrowanej komunikacji, której entropia opiera się na funkcjach VRF.
- Bezpieczne generowanie nowych schematów kryptograficznych. Tak jest w przypadku dowodów zerowej wiedzy (ZKP), które mogą wykorzystywać VRF do generowania niezbędnych zbiorów danych, które następnie mogą być weryfikowane przez strony. Ten przypadek użycia został w pełni wyjaśniony w pracy Silvio Micaliego, Michaela Rabina i Salila Vadhana z 1999 roku.
- Generowanie schematów bezpieczeństwa blockchain. Na przykład, VRF-y mogą być wykorzystywane do generowania bezpiecznych i weryfikowalnych łańcuchów przechowywania transakcji. Mogą być również wykorzystywane w wyroczniach blockchain do weryfikacji transakcji (jak w Chainlink), a nawet w protokołach konsensusu (jak w Algorand).
Autor


