(I tried posting directly to the Google Group first, but I believe that that does NOT actually email the list; thus this message. Apologies if this is incorrect.)
Background: Testing a Ruby app on 64-bit Windows 7 Ultimate, I found
that OpenSSL::PKey::RSA.generate() was taking 98 seconds. Jumping to
C, sampling showed that the great majority of this time was spent in
Heap32Next, which led me to the "heap list and heap walking" section
of RAND_poll in crypto/rand/rand_win.c
The heap walking (and thread and module walking) are limited to 1s
unless the variable "good" is set, and advapi32.dll is loaded, which
means that "poll the CryptoAPI PRNG" using the conjunction of
CryptAcquireContextW and CryptGenRandom must be failing.
Is there anyone in this community with knowledge of this situation?
I'm not aware of any changes in Win7 that would break those calls, but
I'm not aware of much about Win7 in general. I also don't see any
Win7-related changes in the OpenSSL changelog - has this platform been
validated already?
Thanks,
James