Abstract
Table-based implementations have been mainly reported in research related to high-performance AES on GPUs, in which tables are stored in the shared memory. On the other hand, this kind of implementations is subject to timing attacks, due to the latency required to access tables in the shared memory. Thanks to the increasing number of registers every year, GPU programming has enabled memory intensive applications such as bitsliced AES algorithm to be easily implemented. However, researches of implementation of bitsliced AES algorithm on GPU have not so far been conducted sufficiently in terms of several parameters. For this reason, in this paper, we present an implementation of bitsliced AES encryption on CUDA-enabled GPU with several parameters, especially focusing on three kinds of parallel processing granularities. According to the conducted experiments, the throughput of bitsliced AES-ECB encryption with Bs64 granularity achieves 605.9 Gbps on Nvidia Tesla P100-PCIe resulting in an enhancement of 8.0% when compared to the table-based implementation.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Agosta, G., Barenghi, A., Federico, A.D., Pelosi, G.: OpenCL performance portability for general-purpose computation on graphics processor units: an exploration on cryptographic primitives. Concurrency Comput. Pract. Experience 27, 3633–3660 (2015)
Biagio, A.D., Barenghi, A., Agosta, G., Pelosi, G.: Design of a parallel AES for graphics hardware using the CUDA framework. In: Proceedings of the 2009 International Symposium on Parallel Distributed Processing (2009)
Iwai, K., Nishikawa, N., Kurokawa, T.: Acceleration of AES encryption on CUDA GPU. Int. J. Netw. Comput. 2(1), 131–145 (2012)
Li, Q., Zhong, C., Zhao, K., Mei, X., Chu, X.: Implementation and analysis of AES encryption on GPU. In: Proceedings of the 14th International Conference on High Performance Computing and Communication (2012)
Fomin, D.: A timing attack on CUDA implementations of an AES-type block cipher. In: Proceedings of 4th Workshop on Current Trends in Cryptology (2015)
Biham, E.: A fast new DES implementation in software. In: Biham, E. (ed.) FSE 1997. LNCS, vol. 1267, pp. 260–272. Springer, Heidelberg (1997). doi:10.1007/BFb0052352
Käsper, E., Schwabe, P.: Faster and timing-attack resistant AES-GCM. In: Clavier, C., Gaj, K. (eds.) CHES 2009. LNCS, vol. 5747, pp. 1–17. Springer, Heidelberg (2009). doi:10.1007/978-3-642-04138-9_1
NVIDIA Corp. GP100 Pascal Whitepaper (2016)
Wilt, N.: The CUDA Handbook. Pearson Education, Upper Saddle River (2013)
Nishikawa, N., Iwai, K., Tanaka, H., Kurokawa, T.: Throughput and power efficiency evaluation of block ciphers on Kepler and GCN GPUs using micro-benchmark analysis. IEICE Trans. Inf. Syst. 97(6), 1506–1515 (2014)
Bruna, J.V.D., Regazzoni, F., Tumeo, A.: Bitsliced Implementation of the AES Algorithm on GPU. In: Design, Automation and Test in Europe 2012 - Applications for Many-Core Poster Session (2012)
Lim, R.K., Petzold, L.R., Koç, Ç.K.: Bitsliced high-performance AES-ECB on GPUs. In: Ryan, P.Y.A., Naccache, D., Quisquater, J.-J. (eds.) The New Codebreakers. LNCS, vol. 9100, pp. 125–133. Springer, Heidelberg (2016). doi:10.1007/978-3-662-49301-4_8
Könighofer, R.: A fast and cache-timing resistant implementation of the AES. In: Malkin, T. (ed.) CT-RSA 2008. LNCS, vol. 4964, pp. 187–202. Springer, Heidelberg (2008). doi:10.1007/978-3-540-79263-5_12
Boyar, J., Peralta, R.: A small depth-16 circuit for the AES S-Box. In: Gritzalis, D., Furnell, S., Theoharidou, M. (eds.) SEC 2012. IAICT, vol. 376, pp. 287–298. Springer, Heidelberg (2012). doi:10.1007/978-3-642-30436-1_24
Nishikawa, N., Iwai, K., Kurokawa, T.: Acceleration of AES encryption on CUDA GPU. Int. J. Netw. Comput. 2(2), 251–268 (2012)
OpenMP Architecture Review Board. OpenMP Application Program Interface
NVIDIA Corp. Whitepaper: NVIDIA NVLink High-Speed Interconnect: Application Performance (2014)
Acknowledgment
This study was supported in part by the JST/CREST program entitled “Research and Development on Unified Environment Accelerated Computing and Interconnection for Post-Petascale Era” in the research area of “Development of System Software Technologies for Post Peta Scale High Performance Computing.”
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Nishikawa, N., Amano, H., Iwai, K. (2017). Implementation of Bitsliced AES Encryption on CUDA-Enabled GPU. In: Yan, Z., Molva, R., Mazurczyk, W., Kantola, R. (eds) Network and System Security. NSS 2017. Lecture Notes in Computer Science(), vol 10394. Springer, Cham. https://doi.org/10.1007/978-3-319-64701-2_20
Download citation
DOI: https://doi.org/10.1007/978-3-319-64701-2_20
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-64700-5
Online ISBN: 978-3-319-64701-2
eBook Packages: Computer ScienceComputer Science (R0)