RNG tested with algorithms, The algorithms of testing a random number generator are based on some statistics theory, i.e. testing the hypotheses.
There are three stages for RNG testing.
1) Examination of Source Code & Compilation
Identification of RNG algorithm and researching known weaknesses.
Verify internal state of RNG.
Verify RNG implementation caters for unpredictability and non-repeatability requirements.
Verify seeding, background cycling and minimal re-seeding.
Verify use of the random numbers, including scaling.
Compile the RNG code (after all code issues are resolved).
2) Raw numbers generated by the RNG algorithm are subjected to “diehard” tests.
3) Generate sample scaled output and apply “Chi-square” tests e.g., if RNG is used to shuffle a deck of cards, then we would apply Chi-square tests to a wide range of shuffled decks.
The second and third stage tests determine statistical randomness, unpredictability and non-repeatability of the RNG. Our RNG evaluation fully complies with the requirements of the applicable gaming jurisdiction such as Australia, Alderney, Denmark, Gibraltar, Isle of Man, Italy, Kahnawake, Malta, Spain or UK.