Secure and fast encryption (SAFE) with classical random number generators


Pseudo-random number generators (PRNGs) play an important role in both areas of computer simulation and computer security. Currently, there appears to be a huge divide between the types of PRNGs used in these two areas. For PRNGs in computer security applications, the security concern is extremely important. For PRNGs in computer simulation applications, the properties of high-dimensional equi-distribution, efficiency, long period-length, and portability are important. In recent years, there have been many PRNGs proposed in the area of computer simulation satisfying these nice properties. However, most of them are linear generators, thus sharing the same weakness in predictability. The major aim of this article is to propose a general class of secure generators, called SAFE (secure and fast encryption) generators, by properly "mixing" two baseline generators with the aforementioned properties to obtain a secure generator that would inherit these nice properties. Specifically, we propose applying a general mutual-shuffling method to certain linear generators, such as the currently most popular MT19937 generator and large-order multiple recursive generators, as well as outputting certain nonlinear transformations of the generated variates to construct secure PRNGS.

Publication Title

ACM Transactions on Mathematical Software