1
$\begingroup$

The OpenSSL Random Number generator documented here uses an OS-provided entropy source coupled with a MD5 hash function.

Does it impact the quality of randomness to use a broken cryptographic hash such as MD5 for random number generation? The topic is partially addressed in this question, with a focus on SHA1 rather than MD5 tough.

And if any impact, of which nature? Is it a risk of the RNG being predictable?

Back to OpenSSL: Though selecting another hash function seems to be doable at compilation time, there is no (apparent) configuration setting to change the MD5 to SHA2. So if there's any impact, I'd expect that most OpenSSL instances today are affected.

$\endgroup$
2
$\begingroup$

Can the openSSL random number generator be considered cryptographically secure?

Yes.

Does it impact the quality of randomness to use a broken cryptographic hash such as MD5 for random number generation?

Not as far as we know. The question you link does, in fact, cover this topic adequately. To quote it to answer your question:

And actually, collisions in a PRNG output are nothing to be feared. You would expect these to occur naturally (but infrequently) as you produce the output. Random numbers repeat sometimes. What's important is that again given a long sequence of output, we can't at the moment discover the input sequence and therefore the generator's internal state.

This CSPRNG is, with modern (2019) hardware, secure, with there being a very minimal risk to the RNG being predictable.

| improve this answer | |
$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.