English

Class of scalable parallel and vectorizable pseudorandom number generators based on non-cryptographic RSA exponentiation ciphers

Cryptography and Security 2021-05-31 v2

Abstract

Parallel supercomputer-based Monte Carlo and stochastic simulations require pseudorandom number generators that can produce distinct pseudorandom streams across many independent processes. We propose a scalable class of parallel and vectorizable pseudorandom number generators based on a non-cryptographic version of the RSA public-key exponentiation cipher. Our method generates uniformly distributed IEEE double-precision floating point pseudorandom sequences on [0,1)[0,1) by encrypting pseudorandom sequences of 64-bit integer messages by modular exponentiation. The advantages of the method are: the method is parallelizable by parameterization with each pseudorandom number generator instance derived from an independent 64-bit composite modulus, the method is fully scalable on massively parallel computing clusters because of the millions of available 32-bit prime numbers, the seeding and initialization of the independent streams is simple, the periods of the independent instances are all different and greater than 8.5×10378.5\times 10^{37}, and the method passes a battery of intrastream and interstream correlation tests. The calculations in each instance can be vectorized using steam splitting and can produce more than 10810^8 pseudorandom numbers per second on each multicore CPU.

Keywords

Cite

@article{arxiv.1811.11629,
  title  = {Class of scalable parallel and vectorizable pseudorandom number generators based on non-cryptographic RSA exponentiation ciphers},
  author = {Jetanat Datephanyawat and Paul D. Beale},
  journal= {arXiv preprint arXiv:1811.11629},
  year   = {2021}
}

Comments

10 pages, 1 figure. arXiv admin note: text overlap with arXiv:1411.2484

R2 v1 2026-06-23T06:23:44.639Z