Optimization of Advanced Encryption Standard on Graphics Processing Units
Graphics processing units (GPUs) are specially designed for parallel applications and perform parallel operations much faster than central processing units (CPUs). In this work, we focus on the performance of the Advanced Encryption Standard (AES) on GPUs. We present optimizations which remove bank...
Main Author: | |
---|---|
Format: | Article |
Language: | English |
Published: |
IEEE
2021-01-01
|
Series: | IEEE Access |
Subjects: | |
Online Access: | https://ieeexplore.ieee.org/document/9422754/ |
_version_ | 1819012364607946752 |
---|---|
author | Cihangir Tezcan |
author_facet | Cihangir Tezcan |
author_sort | Cihangir Tezcan |
collection | DOAJ |
description | Graphics processing units (GPUs) are specially designed for parallel applications and perform parallel operations much faster than central processing units (CPUs). In this work, we focus on the performance of the Advanced Encryption Standard (AES) on GPUs. We present optimizations which remove bank conflicts in shared memory accesses and provide 878.6 Gbps throughput for AES-128 encryption on an RTX 2070 Super, which is equivalent to 4.1 Gbps per Watt. Our optimizations provide more than 2.56x speed-up against the best GPU results in the literature. Our optimized AES implementations on GPUs even outperform any CPU using the hardware level AES New Instructions (AES-NI) and legacy FPGA-based cluster architectures like COPACOBANA and RIVYERA. Even on a low-end GPU like MX 250, we obtained 60.0 Gbps throughput for AES-256 which is generally faster than the read/write speeds of solid disks. Thus, transition from AES-128 to AES-256 when using GPUs would provide military grade security with no visible performance loss. With these breakthrough performances, GPUs can be used as a cryptographic co-processor for file or full disk encryption to remove performance loss coming from CPU encryption. With a single GPU as a co-processor, busy SSL servers can be free from the burden of encryption and use their whole CPU power for other operations. Moreover, these optimizations can help GPUs to practically verify theoretically obtained cryptanalysis results or their reduced versions in reasonable time. |
first_indexed | 2024-12-21T01:42:53Z |
format | Article |
id | doaj.art-0075d4a623674463acf3018cb70fa4b3 |
institution | Directory Open Access Journal |
issn | 2169-3536 |
language | English |
last_indexed | 2024-12-21T01:42:53Z |
publishDate | 2021-01-01 |
publisher | IEEE |
record_format | Article |
series | IEEE Access |
spelling | doaj.art-0075d4a623674463acf3018cb70fa4b32022-12-21T19:20:05ZengIEEEIEEE Access2169-35362021-01-019673156732610.1109/ACCESS.2021.30775519422754Optimization of Advanced Encryption Standard on Graphics Processing UnitsCihangir Tezcan0https://orcid.org/0000-0002-9041-1932Department of Cyber Security, CyDeS Laboratory, Informatics Institute, Middle East Technical University, Ankara, TurkeyGraphics processing units (GPUs) are specially designed for parallel applications and perform parallel operations much faster than central processing units (CPUs). In this work, we focus on the performance of the Advanced Encryption Standard (AES) on GPUs. We present optimizations which remove bank conflicts in shared memory accesses and provide 878.6 Gbps throughput for AES-128 encryption on an RTX 2070 Super, which is equivalent to 4.1 Gbps per Watt. Our optimizations provide more than 2.56x speed-up against the best GPU results in the literature. Our optimized AES implementations on GPUs even outperform any CPU using the hardware level AES New Instructions (AES-NI) and legacy FPGA-based cluster architectures like COPACOBANA and RIVYERA. Even on a low-end GPU like MX 250, we obtained 60.0 Gbps throughput for AES-256 which is generally faster than the read/write speeds of solid disks. Thus, transition from AES-128 to AES-256 when using GPUs would provide military grade security with no visible performance loss. With these breakthrough performances, GPUs can be used as a cryptographic co-processor for file or full disk encryption to remove performance loss coming from CPU encryption. With a single GPU as a co-processor, busy SSL servers can be free from the burden of encryption and use their whole CPU power for other operations. Moreover, these optimizations can help GPUs to practically verify theoretically obtained cryptanalysis results or their reduced versions in reasonable time.https://ieeexplore.ieee.org/document/9422754/Cryptographyencryptioncryptanalysis |
spellingShingle | Cihangir Tezcan Optimization of Advanced Encryption Standard on Graphics Processing Units IEEE Access Cryptography encryption cryptanalysis |
title | Optimization of Advanced Encryption Standard on Graphics Processing Units |
title_full | Optimization of Advanced Encryption Standard on Graphics Processing Units |
title_fullStr | Optimization of Advanced Encryption Standard on Graphics Processing Units |
title_full_unstemmed | Optimization of Advanced Encryption Standard on Graphics Processing Units |
title_short | Optimization of Advanced Encryption Standard on Graphics Processing Units |
title_sort | optimization of advanced encryption standard on graphics processing units |
topic | Cryptography encryption cryptanalysis |
url | https://ieeexplore.ieee.org/document/9422754/ |
work_keys_str_mv | AT cihangirtezcan optimizationofadvancedencryptionstandardongraphicsprocessingunits |