2010-08-15 20 views
7

CryptGenRandom est une fonction de générateur de nombres aléatoires dans CryptoAPI sous Windows. Combien d'entropie a ce générateur de nombres aléatoires? J'ai déjà beaucoup regardé, mais je n'ai pas pu le trouver. Merci d'avance.CryptGenRandom Entropy

+0

Voir également [Cryptanalyse du générateur de nombres aléatoires du système d'exploitation Windows] (https://eprint.iacr.org/2007/419.pdf) par Leo Dorrendor. – jww

Répondre

11

L'algorithme exact de Windows CryptGenRandom n'a jamais été publié, par conséquent, certains experts en sécurité suggèrent de ne pas l'utiliser du tout.

Une rétro-ingénierie et une cryptanalyse ont été effectuées. Une recherche publiée (Cryptanalysis of the Windows Random Number Generator - Leo Dorrendorf, 2007) a examiné Windows 2000 RNG et a trouvé un certain nombre de faiblesses dans la conception et la mise en œuvre.

Le document décrit également le mécanisme de collecteur d'entropie de l'algorithme (section 4.2.3). Les sources Entropy sont:

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 

Puisque nous parlons d'un pseudo-numéro générateur et non un nombre réel générateur, vous pouvez dire qu'il n'y a pas d'entropie réelle du tout, ou ne compte que les sources vous pouvez considérer comme "entropie" (pseudo-entropie).

Je n'ai pas pu trouver d'informations concernant les versions les plus récentes sur Windows.

+1

Qu'en est-il de l'entropie Windows Vista/7/8? –

+0

Le lien de recherche est mauvais. Pouvez-vous ajuster? – ahmd0

+0

Lien est bon ... –