Skip to content

Remove Fortuna generator, fix Android SecureRandom bug

akwizgran requested to merge 914-simpler-secure-random into master

This branch removes the Fortuna generator and the CombinedSecureRandom that mixes Fortuna's output with the output of the JVM's default SecureRandom implementation. Instead, it installs a single strong SecureRandom implementation.

On Linux and Android, the SecureRandom implementation reads from /dev/urandom. This avoids any weaknesses in the JVM's default SecureRandom implementation, such as CVE-2013-7372.

This branch provides further protection against CVE-2013-7372 on Android by properly seeding the OpenSSL PRNG, in case any libraries use the OpenSSL PRNG directly rather than via SecureRandom.

Closes #914 (closed)

Merge request reports