IDEAS home Printed from https://ideas.repec.org/a/gam/jmathe/v8y2020i11p1894-d438051.html
   My bibliography  Save this article

Parallel Implementations of ARX-Based Block Ciphers on Graphic Processing Units

Author

Listed:
  • SangWoo An

    (Department of Financial Information Security, Kookmin University, Seoul 02707, Korea)

  • YoungBeom Kim

    (Department of Information Security, Cryptology, and Mathematics, Kookmin University, Seoul 02707, Korea)

  • Hyeokdong Kwon

    (Division of IT Convergence Engineering, Hansung University, Seoul 02876, Korea)

  • Hwajeong Seo

    (Division of IT Convergence Engineering, Hansung University, Seoul 02876, Korea)

  • Seog Chung Seo

    (Department of Information Security, Cryptology, and Mathematics, Kookmin University, Seoul 02707, Korea)

Abstract

With the development of information and communication technology, various types of Internet of Things (IoT) devices have widely been used for convenient services. Many users with their IoT devices request various services to servers. Thus, the amount of users’ personal information that servers need to protect has dramatically increased. To quickly and safely protect users’ personal information, it is necessary to optimize the speed of the encryption process. Since it is difficult to provide the basic services of the server while encrypting a large amount of data in the existing CPU, several parallel optimization methods using Graphics Processing Units (GPUs) have been considered. In this paper, we propose several optimization techniques using GPU for efficient implementation of lightweight block cipher algorithms on the server-side. As the target algorithm, we select high security and light weight (HIGHT), Lightweight Encryption Algorithm (LEA), and revised CHAM, which are Add-Rotate-Xor (ARX)-based block ciphers, because they are used widely on IoT devices. We utilize the features of the counter (CTR) operation mode to reduce unnecessary memory copying and operations in the GPU environment. Besides, we optimize the memory usage by making full use of GPU’s on-chip memory such as registers and shared memory and implement the core function of each target algorithm with inline PTX assembly codes for maximizing the performance. With the application of our optimization methods and handcrafted PTX codes, we achieve excellent encryption throughput of 468, 2593, and 3063 Gbps for HIGHT, LEA, and revised CHAM on RTX 2070 NVIDIA GPU, respectively. In addition, we present optimized implementations of Counter Mode Based Deterministic Random Bit Generator (CTR_DRBG), which is one of the widely used deterministic random bit generators to provide a large amount of random data to the connected IoT devices. We apply several optimization techniques for maximizing the performance of CTR_DRBG, and we achieve 52.2, 24.8, and 34.2 times of performance improvement compared with CTR_DRBG implementation on CPU-side when HIGHT-64/128, LEA-128/128, and CHAM-128/128 are used as underlying block cipher algorithm of CTR_DRBG, respectively.

Suggested Citation

  • SangWoo An & YoungBeom Kim & Hyeokdong Kwon & Hwajeong Seo & Seog Chung Seo, 2020. "Parallel Implementations of ARX-Based Block Ciphers on Graphic Processing Units," Mathematics, MDPI, vol. 8(11), pages 1-25, October.
  • Handle: RePEc:gam:jmathe:v:8:y:2020:i:11:p:1894-:d:438051
    as

    Download full text from publisher

    File URL: https://www.mdpi.com/2227-7390/8/11/1894/pdf
    Download Restriction: no

    File URL: https://www.mdpi.com/2227-7390/8/11/1894/
    Download Restriction: no
    ---><---

    Corrections

    All material on this site has been provided by the respective publishers and authors. You can help correct errors and omissions. When requesting a correction, please mention this item's handle: RePEc:gam:jmathe:v:8:y:2020:i:11:p:1894-:d:438051. See general information about how to correct material in RePEc.

    If you have authored this item and are not yet registered with RePEc, we encourage you to do it here. This allows to link your profile to this item. It also allows you to accept potential citations to this item that we are uncertain about.

    We have no bibliographic references for this item. You can help adding them by using this form .

    If you know of missing items citing this one, you can help us creating those links by adding the relevant references in the same way as above, for each refering item. If you are a registered author of this item, you may also want to check the "citations" tab in your RePEc Author Service profile, as there may be some citations waiting for confirmation.

    For technical questions regarding this item, or to correct its authors, title, abstract, bibliographic or download information, contact: MDPI Indexing Manager (email available below). General contact details of provider: https://www.mdpi.com .

    Please note that corrections may take a couple of weeks to filter through the various RePEc services.

    IDEAS is a RePEc service. RePEc uses bibliographic data supplied by the respective publishers.