-
Path: news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.PO
STED!not-for-mail
From: Michoo <m...@v...pl>
Newsgroups: pl.comp.programming
Subject: Re: Pojemnik na liczby losowe
Date: Thu, 23 Jun 2011 12:50:35 +0200
Organization: http://onet.pl
Lines: 60
Message-ID: <itv5qf$pk9$1@news.onet.pl>
References: <ittsd2$hm1$1@news.onet.pl> <ittut3$pse$1@news.onet.pl>
<ituhgh$guu$1@news.onet.pl>
NNTP-Posting-Host: 83.238.197.12
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.onet.pl 1308826255 26249 83.238.197.12 (23 Jun 2011 10:50:55 GMT)
X-Complaints-To: n...@o...pl
NNTP-Posting-Date: Thu, 23 Jun 2011 10:50:55 +0000 (UTC)
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.15) Gecko/20110402
Icedove/3.1.9
In-Reply-To: <ituhgh$guu$1@news.onet.pl>
Xref: news-archive.icm.edu.pl pl.comp.programming:191103
[ ukryj nagłówki ]W dniu 23.06.2011 07:04, Tubylerczyk pisze:
> W dniu 2011-06-23 01:46, Michoo pisze:
>> W dniu 23.06.2011 01:04, Tubylerczyk pisze:
>>> Jak inicjalizować generator pseudolosowy losową wartością?
>> Byłoby łatwiej jakbyś określił do czego Ci to potrzebne.
>
> (W jakiś sposób guid w systemie liczony jest tak, że mamy 128-bitową
> wartość losową, nie wiem na ile jest losowy)
On ma być unikalny a nie losowy. Oidp jakaś implementacja używała
fragmentu MAC i czasu jako części składowych.
> Na przykład: generuję losowe hasło dla użytkownika.
Oidp sam wynik MD5 jest dość dobrym ciągiem losowym.
Jeżeli dokładny czas jest nieznany "na zewnątrz". (Np użycie licznika
cykli z performance counters) to dla potrzeb wygenerowania hasła
wystarczy (każda sekunda to 10^9 możliwości).
Zapewnia to po pierwsze losowy rozkład wyjścia a po drugie praktyczną
niemożliwość prognozowania hasła na podstawie nawet wielu znanych. A to
chyba główne 2 zadania do których losowość jest tu potrzebna.
>
>>
>>> Jedną z
>>> możliwości jest odczyt zegara, ale tylko najmłodsze bity są losowe (jak
>>> określić - ile?).
>> Liczysz md5 z tej wartości i się nie przejmujesz tym ile.
>
> Ale losowa pozostaje tylko część tej liczby. Mówiąc obrazowo: mam 128
> bitową liczbę, ale tylko mały podzbiór jej wartości jest osiągalny.
> w skrajnym wypadku byłby jeden bit, policzenie md5 dałoby dwie duże
> liczby z których albo jedna albo druga by występowała.
Tylko czas ma taką niewiarygodną własność, że jest monotoniczny a nie 2
wartościowy.
MD5 (czy SHA - do wyboru) daje wyjście spełniające dość dobrze kryteria
ciągu losowego.
W efekcie mamy funkcję przyporządkowującą dla danego T n-bitową wartość
losową[*]. To, że ciąg z którego bierzemy T nie jest losowy nie ma
praktycznego znaczenia, bo używana funkcja nie posiada funkcji odwrotnej.
[*] ściśle mówiąc pseudolosową - przeciwdziedzina funkcji skrótu jest
zawsze ograniczona, czas również (do słowa 64/128b), ale są to wartości
dostatecznie duże
>
>> Od tego jest generator PSEUDOlosowy - on ma już pamięć i generuje
>> kolejne wartości w oparciu o poprzednie - seed ustawia się raz.
>
> Przydałby się prawdziwie losowy generator wbudowany w procesor oparty o
> kwanty.
Są generatory oparte o szumy termiczne. Stosuje się je tam gdzie to jest
konieczne. W komputerach domowych raczej nie jest. No i łatwiej się
poprawia ewentualne błędy w programach niż w krzemie.
--
Pozdrawiam
Michoo
Następne wpisy z tego wątku
- 23.06.11 13:20 bartekltg
- 23.06.11 15:02 Tubylerczyk
- 24.06.11 07:09 Mariusz Marszałkowski
- 24.06.11 12:57 b...@n...pl
- 24.06.11 16:19 Tubylerczyk
- 27.06.11 07:25 Paweł Kierski
- 27.06.11 10:03 Tubylerczyk
- 27.06.11 10:25 Michoo
- 27.06.11 10:33 Michoo
- 27.06.11 19:19 Jędrzej Dudkiewicz
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2025-01-04 Zbieranie danych przez www
- 2025-01-04 reverse engineering i dodawanie elementów do istniejących zamkniętych produktów- legalne?
- 2025-01-04 w Nowym Roku 2025r
- 2025-01-04 Warszawa => Specjalista ds. IT - II Linia Wsparcia <=
- 2025-01-04 Warszawa => Java Developer <=
- 2025-01-04 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-04 Warszawa => System Architect (Java background) <=
- 2025-01-04 Wrocław => Application Security Engineer <=
- 2025-01-04 Chrzanów => Specjalista ds. public relations <=
- 2025-01-04 Katowice => Key Account Manager (ERP) <=
- 2025-01-03 Problem z odczytem karty CF
- 2025-01-03 Jazda z Warszawy do Krakowa teslą
- 2025-01-03 Wrocław => Konsultant Wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-01-03 Warszawa => International Freight Forwarder <=
- 2025-01-03 Mińsk Mazowiecki => Area Sales Manager OZE <=