Abstract:
Pseudo-Random Number Generators (PRNGs) play an important role in many cryptographic applications.
Many network security algorithms and protocols that are based on cryptography also require random or
pseudorandom numbers at certain points. PRNG is an algorithm that is used to generate a random sequence
that has the same behavior of truly random numbers. Each generated number should not depend on the
previously generated numbers, and thus it is not possible to predict such numbers. However, not all PRNGs
are suitable for cryptographic applications. Therefore, various statistical tests can be applied to the obtained
sequence to evaluate and compare it with truly random sequences. A PRNG that passes all statistical tests
can be considered as a statistically secure PRNG. Based on some properties of chaos, such as randomness,
unpredictability, and high sensitivity to the secret key, we proposed a new PRNG. The proposed PRNG is
based on a modified chaotic map proposed in [20], and a new lookup table, which is created in such way that
the stored numbers will not be duplicated in the same row, column, or diameter. The proposed map and
lookup table are used to produce non-linear and non-invertible functions, which are the main targets of any
secure PRNG. As a result, the behavior of the proposed PRNG simulates the behavior of TRNGs. The
obtained results from the cryptographic analysis and the standard statistical National Institute of Standards
and Technology (NIST) tests indicate the robustness of the proposed PRNG. Furthermore, it is robust against
known cryptographic attacks, and it has a strong non-linearity compared to the other systems. A comparison
study of efficiency in terms of both speed performance and robustness against cryptanalysis was done, and
the results demonstrate the superiority of the proposed algorithm.