So, as we all know, Dual_EC_DRBG contains an NSA back door. At this point, there is no reason to call it a "potential" or even an "alleged" back door; the presence is obvious even to the NY Times.
As we also know, RSA BSAFE has been using Dual_EC_DRBG by default, with a justification so stupid it can only be translated as "because NSA paid us to".
This comment on Ars Technica asserts that Microsoft also uses this generator. But I have seen claims to the contrary. Thus my questions are:
What PRNG does Windows Server use to generate private keys for Certificate Signing Requests?
What PRNG does Internet Explorer on Windows use to generate session keys? How about Chrome and Firefox on Windows?
What PRNG does IIS on Windows use to generate ephemeral key material for PFS?
I am most interested in the latest versions of all of these products, and certainly only those released after 2007. References or at least an air of authority are preferred.
As a result, NIST strongly discourages the use of Dual EC DRBG until concerns with it are addressed in a future revision of SP 800-90A.
Well… in contrast to that rather outdated statement, I personally doubt they will address it in future revisions because on April 21, 2014, NIST stated that NIST removed Dual_EC_DRBG from the Rev. 1 document. The revised SP 800-90A is available at http://csrc.nist.gov/news_events/index.html#apr21 ––– Anyway, thanks for the feedback on the MS perspective and status quo. Much appreciated. – e-sushi May 07 '14 at 18:28NTSTATUS ret = BCryptGenRandom(NULL, output, size, BCRYPT_USE_SYSTEM_PREFERRED_RNG)
, which RNG is used?BCRYPT_USE_SYSTEM_PREFERRED_RNG
behavior is not well documented with respect to its interactions withBCRYPT_RNG_ALGORITHM
andBCRYPT_RNG_DUAL_EC_ALGORITHM
. (Or maybe more correctly, its ambiguous in the NIST security policy). I ask because I've seen others use it, like Wine. – Apr 29 '16 at 02:00