HIGHT 블록 암호 알고리즘의 고속화 구현

Vol. 22, No. 3, pp. 495-504, 6월. 2012
10.13089/JKIISC.2012.22.3.495, Full Text:
Keywords: HIGHT, block cipher, Bit-slice, Byte-slice, GPGPU, CUDA
Abstract

본 논문에서는 국제 표준 블록 암호 알고리즘인 HIGHT를 CPU 및 GPU 상에서 소프트웨어로 고속화 구현하기 위한 다양한 방법을 시도한다. 먼저 CPU 상에서는 32비트 및 64비트 운영체제를 고려하고 비트 슬라이싱 및 바이트 슬라이싱 기법을 적용한다. 이들 최적화 기법의 적용 결과, Intel core i7 920 CPU 상에서 64비트 운영체제를 이용할 경우 최대 1.48Gbps의 속도를 보여 슬라이싱이 적용되지 않은 기존 구현에 비해 최대 2.4배 빠른 성능을 확인할 수 있었다. 한편 GPU 상에서는 NVIDIA의 CUDA 라이브러리를 활용하였으며, 서브키 및 F 함수를 위한 룩업 테이블 등과 같이 자주 사용되는 데이터를 공유 메모리에 저장하여 사용하고, 전역 메모리에서 데이터를 읽어올 때는 통합 접근(coalesced access) 기법을 사용하는 등 최적화 기법들을 적용해 구현하였다. 특히 본 논문은 GPU 상에서 HIGHT를 최적화한 최초의 결과로, GPU 상에서도 바이트 슬라이싱 기법을 적용할 경우 단순 구현 결과보다 20% 이상 빠른 성능을 확인할 수 있었으며, CPU에 비해서는 약 31배 빠른 결과를 얻을 수 있었다.

Statistics
Show / Hide Statistics

Statistics (Cumulative Counts from December 1st, 2017)
Multiple requests among the same browser session are counted as one view.
If you mouse over a chart, the values of data points will be shown.


Cite this article
[IEEE Style]
E. Baek and M. Lee, "Speed-optimized Implementation of HIGHT Block Cipher Algorithm," Journal of The Korea Institute of Information Security and Cryptology, vol. 22, no. 3, pp. 495-504, 2012. DOI: 10.13089/JKIISC.2012.22.3.495.

[ACM Style]
Eun-Tae Baek and Mun-Kyu Lee. 2012. Speed-optimized Implementation of HIGHT Block Cipher Algorithm. Journal of The Korea Institute of Information Security and Cryptology, 22, 3, (2012), 495-504. DOI: 10.13089/JKIISC.2012.22.3.495.