Cryptography in GPUs



Cryptography, the science of writing secrets, has been used for centuries to conceal information from eavesdroppers and spies. Today, in the information age, data security and authenticity are paramount, as more services and applications start to rely on the Internet, an unsecured channel. Despite the existence of security protocols and implementations, many online services refrain to use cryptographic algorithms due to their poor performance, even when using cryptography would be a clear advantage.

Graphics processing units (GPU) have been increasingly used in the last few years for general purpose computing. We present and describe serial and parallel efficient algorithms for modular arithmetic in the GPU. Based on these, we developed GPU implementations of symmetric-key ciphers, namely AES and Salsa20, and public-key algorithms, such as RSA, Diffie-Hellman and DSA. We bundled this software into a library that contains the main achievements of this thesis.

We show that our symmetric-key cipher and modular exponentiation implementations included in this library outperform recent Intel CPUs and all previous GPU implementations. We achieve 11686 512-bit modular exponentiations per second, 1215 1024-bit modular exponentiations per second and peak AES-CTR throughputs of 1032 MB/s.


Cryptography, Parallel Computing

MSc Thesis

Cryptography in GPUs, July 2009

PDF File

Cited by

Year 2013 : 3 citations

 Khalid, Ayesha, Goutam Paul, and Anupam Chattopadhyay. "New Speed Records for Salsa20 Stream Cipher Using an Autotuning Framework on GPUs." In Progress in Cryptology–AFRICACRYPT 2013, pp. 189-207. Springer Berlin Heidelberg, 2013.

 Norouzi, Benyamin, Seyed Mohammad Seyedzadeh, Sattar Mirzakuchaki, and Mohammad Reza Mosavi. "A novel image encryption based on hash function with only two-round diffusion process." Multimedia Systems: 1-20.

 Shahzad, Khawar, Ayesha Khalid, Zoltán Endre Rákossy, Goutam Paul, and Anupam Chattopadhyay. "CoARX: a coprocessor for ARX-based cryptographic algorithms." In Proceedings of the 50th Annual Design Automation Conference, p. 133. ACM, 2013.

Year 2011 : 1 citations

 Neves, Samuel, and Filipe Araujo. "On the performance of GPU public-key cryptography." In Application-Specific Systems, Architectures and Processors (ASAP), 2011 IEEE International Conference on, pp. 133-140. IEEE, 2011.

Year 2010 : 1 citations

 Schober, Marc. "Efficient password and key recovery using graphics cards." PhD diss., Master’s thesis, Ruhr-Universität Bochum, 2010.