Paper 2013/768

VMPC-R Cryptographically Secure Pseudo-Random Number Generator Alternative to RC4

Bartosz Zoltak


We present a new Cryptographically Secure Pseudo-Random Number Generator. It uses permutations as its internal state, similarly to the RC4 stream cipher. We describe a statistical test which revealed non-random patterns in a sample of $2^{16.6}$ outputs of a 3-bit RC4. Our new algorithm produced $2^{46.8}$ undistinguishable from random 3-bit outputs in the same test. We probed $2^{51}$ outputs of the algorithm in different statistical tests with different word sizes and found no way of distinguishing the keystream from a random source. The size of the algorithm's internal state is $2^{3424}$ (for an 8-bit implementation). The algorithm is cryptographically secure to the extent we were able to analyse it. Its design is simple and easy to implement. We present the generator along with a key scheduling algorithm processing both keys and initialization vectors.

Available format(s)
Secret-key cryptography
Publication info
Preprint. MINOR revision.
PRNGCSPRNGRC4stream cipherdistinguishing attackbias
Contact author(s)
bzoltak @ vmpcfunction com
2019-01-16: revised
2013-11-25: received
See all versions
Short URL
Creative Commons Attribution


      author = {Bartosz Zoltak},
      title = {{VMPC}-R Cryptographically Secure Pseudo-Random Number Generator Alternative to {RC4}},
      howpublished = {Cryptology ePrint Archive, Paper 2013/768},
      year = {2013},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.