Implementation and Evaluation of Different Parallel Designs of AES Using CUDA

The Advanced Encryption Standard(AES) is used in security areas widely now. However, there is still a large room for further improvement of its execution efficiency. Since the graphics processing unit(GPU) with potent ability of parallel computing has been applied in general purpose of computation,...

Full description

Saved in:
Bibliographic Details
Published in2017 IEEE Second International Conference on Data Science in Cyberspace (DSC) pp. 606 - 614
Main Authors Jianwei Ma, Xiaojun Chen, Rui Xu, Jinqiao Shi
Format Conference Proceeding
LanguageEnglish
Published IEEE 01.06.2017
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:The Advanced Encryption Standard(AES) is used in security areas widely now. However, there is still a large room for further improvement of its execution efficiency. Since the graphics processing unit(GPU) with potent ability of parallel computing has been applied in general purpose of computation, people have tried to use it to faster execution time in various cryptographic algorithms. This paper discusses how the performance of CBC-AES decryption based on GPU is influenced by 4 key parameters that include the size of input data, the number of threads per block, memory allocation style and parallel granularity. Further more, we compare the performance of AES on GPU to that of standard AES, AES-NI and find that when the size of input data is different, the implementations with different parameters setting achieve the best performance. So we provide several advices about how to implement CBC-AES on GPU aiming at different size of input data. In particular, our best performance of experiments on GPU(NVIDIA Tesla K40m) is about 112 times faster than the implementation of AES on CPU (Intel Xeon E5-2650) by using our optimization method.
DOI:10.1109/DSC.2017.19