CryptGenRandom to funkcja generatora liczb losowych w CryptoAPI w systemie Windows. Ile entropii ma ten generator liczb losowych? Wiele już widziałem, ale nie mogłem go znaleźć. Z góry dziękuję.CryptGenRandom Entropy
Odpowiedz
Dokładny algorytm systemu Windows CryptGenRandom nigdy nie został opublikowany, dlatego niektórzy eksperci bezpieczeństwa sugerują, aby go w ogóle nie używać.
Wykonano inżynierię odwrotną i kryptoanalizę. Opublikowane badanie (Cryptanalysis of the Windows Random Number Generator - Leo Dorrendorf, 2007) zbadało system Windows 2000 RNG i wykryło szereg słabych punktów w projekcie i implementacji.
Dokument opisuje także mechanizm kolektora entropijnego algorytmu (punkt 4.2.3). Źródła Entropy to:
Source Bytes requested
CircularHash 256
KSecDD 256
GetCurrentProcessID() 8
GetCurrentThreadID() 8
GetTickCount() 8
GetLocalTime() 16
QueryPerformanceCounter() 24
GlobalMemoryStatus() 16
GetDiskFreeSpace() 40
GetComputerName() 16
GetUserName() 257
GetCursorPos() 8
GetMessageTime() 16
NTQuerySystemInformation calls:
ProcessorTimes 48
Performance 312
Exception 16
Lookaside 32
ProcessorStatistics up to the remaining length (3584 bytes buffer)
ProcessesAndThreads up to the remaining length
Ponieważ mówimy o pseudo-number-generator, a nie rzeczywistym numer generatora, można powiedzieć, że nie ma prawdziwego entropia w ogóle, albo liczyć tylko te źródła, które możesz uważać za "entropię" (pseudo-entropię).
Nie mogłem znaleźć informacji dotyczących nowszych wersji w systemie Windows.
co z entropią Windows Vista/7/8? –
Link do badań jest zły. Czy potrafisz dostosować? – ahmd0
Link jest dobry ... –
- 1. Dżungla krzyżowa Entropy
- 2. Ważone drzewa decyzyjne za pomocą Entropy
- 3. Uzyskaj lub oblicz entropię obrazu za pomocą Ruby i imagemagick
- 4. Obliczanie entropii
- 5. Dlaczego entropia rozkładu jednolitego jest mniejsza od wartości powtarzanych w R?
- 6. Najszybszy sposób obliczania entropii w Pythonie
- 7. Animowany histogram Matplotlib
- 8. Implementacja random_device w VS2010?
- 9. W systemie Windows Java SecureRandom.generateSeed nie powiodło się: nieoczekiwany błąd CryptoAPI
- 10. W jaki sposób keras definiuje "dokładność" i "utratę"?
- 11. Czy pyton SystemRandom/os.urandom zawsze mają wystarczającą entropię dla dobrego krypto
- 12. Czy nasienie Ruby dla OpenSSL :: Losowo wystarczające?
- 13. pisanie funkcji kosztów niestandardowych w tensorflow
- 14. DPAPI: Używanie CryptUnprotect przed zalogowaniem użytkownika w
- 15. Używanie GridSearchCV z AdaBoost i DecisionTreeClassifier
- 16. Losowe strojenie hiperparametru w lesie scikit-learn przy użyciu GridSearchCV
- 17. Najlepsze praktyki dotyczące generowania tokenów OAuth?
- 18. Wykreślanie modelu sieci neuronowej z pakietu nnet R cran
- 19. Nie można połączyć tomsfastmath do libtomcrypt
- 20. Certyfikaty klienta wydane przez mój własny ośrodek certyfikacji z Apache
- 21. OpenCL Theano - Jak skutecznie wyłączyć CUDA?
- 22. TensorFlow - wprowadzenie zarówno regularyzacji L2, jak i rezygnacji z sieci. Czy to ma jakiś sens?
- 23. Codeigntier: Nie można załadować żądanego pliku: helpers/phpass_helper.php na Ubuntu 14.04
- 24. Zmiany w schemacie przekroczą limit czasu w Cassandrze
- 25. Certyfikat klienta Windows 8 Phone Uwierzytelnianie HTTPS
Zobacz także [Kryptoanaliza generatora liczb losowych systemu operacyjnego Windows] (https://eprint.iacr.org/2007/419.pdf) autorstwa Leo Dorrendora. – jww