GPU implementation of a scalable non-linear congruential generator for cryptography applications Conference Paper uri icon

abstract

  • Fast key generation algorithms which can generate random sequences of varying atomic lengths and throughput are important for secure data communication. In this paper, we present a non-linear congruential method for generating high quality random numbers at flexible throughput rates of upto 66 Gbps, on a GPU platform. Each random number can have up to 4096 key bits. The method can be easily extended for implementation on hardware platforms like FPGAs and ASICs as well. Our key generator is comprised of N Linear Congruential Generators (LCGs) running in parallel; we have chosen N=4096 for the GPU implementation. The outputs of the LCGs are combined using N encoded majority functions. The encoded majority function used for any bit is changed in every generation iteration. In our GPU implementation of the Non-Linear Congruential Generator (GPU-NLCG), it is possible to alter the LCG functions on the fly by changing the primes periodically without interrupting the generation. Our GPU-NLCG can be used for high speed cryptographic key generation for rates up to 66 Gbps and can be easily integrated into multi-threaded applications in cryptography and Monte Carlo methods. The GPU-NLCG passes the NIST, Diehard and Dieharder battery of tests of randomness, which ensure the quality of our ciphers. 2013 ACM.

name of conference

  • Proceedings of the 23rd ACM international conference on Great lakes symposium on VLSI

published proceedings

  • Proceedings of the 23rd ACM international conference on Great lakes symposium on VLSI

author list (cited authors)

  • Belsare, A., Liu, S., & Khatri, S.

citation count

  • 2

complete list of authors

  • Belsare, Aditya||Liu, Steve||Khatri, Sunil

publication date

  • January 2013