484 / 691TRNG

True Random Number Generator

Fizyczny generator liczb losowych

TRNG wykorzystuje proces fizyczny jako źródło niepewności. Słowo „true” nie zastępuje oceny entropii, wykrywania awarii ani sprawdzenia drogi wyjścia do portfela.

True Random Number Generator pozyskuje losowość ze źródła fizycznego, zamiast jedynie rozwijać zapisany stan. Źródło szumu, próbkowanie, kondycjonowanie i interfejs aplikacji są osobnymi częściami. Sprzętowe pochodzenie samo nie gwarantuje równomiernych ani niezależnych bitów.

NIST SP 800-90B ocenia źródło entropii obejmujące szum, opcjonalne kondycjonowanie i testy stanu. Przedmiotem jest wykazana niepewność próbek, nie tylko liczba bajtów. Samo nazwanie zjawiska fizycznego nie daje takiego oszacowania. [NIST SP 800-90B — Entropy sources, conditioning and health tests]

Kondycjonowanie może ograniczyć obciążenie i skupić dostępną entropię w krótszym wyjściu. NIST SP 800-90B ogranicza deklarowaną entropię wyjścia według wejścia i mechanizmu. Losowo wyglądający hash sam nie dowodzi nieprzewidywalności pierwotnych próbek. [NIST SP 800-90B — Entropy sources, conditioning and health tests]

Repetition Count Test i Adaptive Proportion Test w NIST SP 800-90B monitorują powtórzenia i nietypowe częstości próbek. Nie stanowią uniwersalnego dowodu bezpieczeństwa. Po wykryciu trwałej awarii źródło nie może normalnie dostarczać kolejnych wyników. [NIST SP 800-90B — Entropy sources, conditioning and health tests]

NIST SP 800-90B wiąże ocenę z warunkami technicznymi i eksploatacyjnymi konkretnego źródła. Testy restartu uzupełniają długi ciągły zapis. Sukces jednej próbki nie obejmuje automatycznie wszystkich urządzeń, środowisk ani zmian firmware. [NIST SP 800-90B — Entropy sources, conditioning and health tests]

Przewodnik DRNG Intela odróżnia RDRAND czytające wynik generatora deterministycznego od RDSEED dostarczającego kondycjonowaną entropię do inicjalizacji. Instrukcja sprzętowa nie musi więc bezpośrednio udostępniać nieprzetworzonego szumu fizycznego. [Intel DRNG guide — RDRAND, RDSEED and CF]

Intel wymaga sprawdzania CF dla RDRAND i RDSEED: 1 oznacza dostępny wynik, 0 jego brak. Liczbowe zero w rejestrze docelowym samo nie jest sprawdzeniem sukcesu. Obsługa instrukcji i powodzenie pojedynczego wywołania to różne sprawy. [Intel DRNG guide — RDRAND, RDSEED and CF]

Dokumentacja Linux hw_random ostrzega, że dane /dev/hwrng nie są sprawdzane testami jakości przez ten interfejs znakowy, a wadliwy sprzęt może zwracać błędne dane. Odczyt urządzenia nie dowodzi jakości entropii ani bezpiecznej integracji aplikacji. [Linux kernel — Hardware random number generator interface]

NIST SP 800-90C łączy źródła entropii i mechanizmy generowania w pełne konstrukcje. Ocena portfela musi wskazać komponent, wersję, testy, awarie i dalsze przetwarzanie. Certyfikacja źródła nie ocenia całego portfela ani nie chroni późniejszej kopii zapasowej. [NIST SP 800-90C — Complete RBG constructions]

Pełniejszy obraz uzyskasz, czytając to hasło razem z Cryptographic Entropy, Random Number Generator, CSPRNG, Entropy Mixing. Do tego hasła prowadzą również odsyłacze z Entropy Mixing.

DOC · 001NIST SP 800-90B — Entropy sources, conditioning and health testsSpecyfikacja ↗DOC · 002Intel DRNG guide — RDRAND, RDSEED and CFDokumentacja ↗DOC · 003Linux kernel — Hardware random number generator interfaceDokumentacja ↗DOC · 004NIST SP 800-90C — Complete RBG constructionsSpecyfikacja ↗
Najpierw źródła · To nie jest porada inwestycyjna