Losowe nasienie

Losowe ziarno ( lub stan zarodka lub po prostu ziarno ) to liczba (lub wektor ) używana do zainicjowania generatora liczb pseudolosowych .

Aby ziarno mogło być użyte w generatorze liczb pseudolosowych, nie musi być losowe. Ze względu na naturę algorytmów generujących liczby, o ile pierwotne ziarno jest ignorowane, reszta wartości generowanych przez algorytm będzie podlegać rozkładowi prawdopodobieństwa w sposób pseudolosowy.

Sekwencja liczb generatora liczb pseudolosowych jest całkowicie określona przez ziarno: zatem jeśli generator liczb pseudolosowych zostanie ponownie zainicjowany z tym samym ziarnem, wytworzy tę samą sekwencję liczb.

Wybór dobrego losowego materiału siewnego ma kluczowe znaczenie w dziedzinie bezpieczeństwa komputerowego . Kiedy tajny klucz szyfrowania jest generowany pseudolosowo , posiadanie ziarna pozwoli na uzyskanie klucza. Wysoka entropia jest ważna dla wybrania dobrych losowych danych początkowych.

Jeśli to samo losowe ziarno jest celowo udostępniane, staje się tajnym kluczem , więc dwa lub więcej systemów wykorzystujących pasujące algorytmy liczb pseudolosowych i pasujące ziarna mogą generować pasujące sekwencje niepowtarzalnych liczb, które można wykorzystać do synchronizacji zdalnych systemów, takich jak satelity GPS i odbiorniki.

Losowe nasiona są często generowane na podstawie stanu systemu komputerowego (takiego jak czas ), kryptograficznie bezpiecznego generatora liczb pseudolosowych lub sprzętowego generatora liczb losowych .

Zobacz też