Random Labs (Free)
(*Latest release 2.1/7th January 2016 )
Random Labs provides tools for obtaining and manipulating strong random numbers and to generate passwords and lotto random numbers.
Random numbers acquired with this software fall in 2 categories:
A – True Random Numbers
Numbers in this category are retrieved from an on online source at http://www.random.org.
You can visit this if you have access to the internet via O2 or any other company. If you are using a fast speed internet connection, you will find it much quicker to access.
Random.org uses atmospheric noise to produce true random numbers.
The rate of production of random numbers from atmospheric noise is not very high, but above other web sources we were able to find. The owner of the website has taken measures to prevent abuse of the random generator resource, namely the maximum number of downloadable random bits is 1,000,000 in a single day from each IP address and the recharging is done at a daily rate of 200,000 bits. This is more than enough for most purposes.
B- Cryptographically Secure Pseudo-Random Number Generators (CSPRNG)
Random Labs includes 2 of the most strong CSPRNG:
1- CryptoMT was developed by Makoto Matsumoto and Takuji Nishimura, authors of the well known Mersenne Twister PRNG. CryptoMT is based on Mersenne Twister (MT), a PRNG with a period of 219937-1. Despite its gigantic period, MT is unsuitable for cryptographic purposes. The reason is simple, it is possible to determine all future states of the generator from the state the generator had at any given time, and either 624 32-bit outputs, or 19,937 one-bit outputs are sufficient to provide that state. CryptoMT works on the output of MT in such a way that there is no way to reconstruct the original sequence of values. In addition, our version of MT is initialized with a seed array of 8 dwords, each dword taken from the Pool (if exists) of true random numbers. Except for the most paranoid cases, CryptoMT can be used as a substitute for a TRNG for all sorts of applications involving random numbers.
2- CryptoAPI is a Microsoft API (application programming interface) that provides cryptography related services, including the generation of cryptographic quality pseudo random numbers. For some people, security related developments with the seal of Microsoft are to be regarded with a grain of salt, so if you do not trust Microsoft then use the CryptoMT instead. Some entropy is gathered from the PC system and used for calling the CryptoAPI, this is not strictly necessary according to Microsoft but provides an additional random seed.
(Latest release: 2.1. Automatically installs either as 32-bit or 64-bit, according to the bitness of your system)