ARMv8 환경에서 NIST LWC SPARKLE 효율적 구현

Vol. 33, No. 3, pp. 401-410, 6월. 2023
10.13089/JKIISC.2023.33.3.401, Full Text:
Keywords: SPARKLE, Implementation, NIST LWC, ARMv8
Abstract

본 논문에서는 NIST LWC 최종후보 중 하나인 SPARKLE을 64-비트 ARMv8 프로세서 상에서 최적화하는 방안에 대해 제안한다. 제안 방법은 두 가지로서 ARM A64 명령어를 이용한 구현과 NEON ASIMD 명령어를 이용한 구현이다. A64 기반 제안구현은 ARMv8 상에서 가용한 레지스터를 효율적으로 사용할 수 있도록 레지스터 스케줄링을 수행하여 최적화한다. 최적화된 A64 기반 제안구현을 활용할 경우 Raspberry Pi 4B에서 C언어 참조구현보다 1.69~1.81배 빠른 속도를 얻을 수 있다. 두 번째로, ASIMD 기반 제안구현은 하나의 벡터 명령어를 통해 3개 이상의 ARX-box를 병렬적으로 수행하도록 데이터를 병렬적으로 구성하여 최적화한다. 최적화된 ASIMD 기반 제안구현은 A64 기반 제안구현보다 일반적인 속도는 떨어지지만, SPARKLE256에서 SPARKLE512로 블록 크기가 증가할 때 A64 기반 제안구현에서는 속도가 2.1배 느려지는 것에 비해 ASIMD 기반 제안구현에서는 1.2배밖에 느려지지 않다는 장점이 있다. 따라서 기존 SPARKLE보다 더 큰 블록 크기를 갖는 SPARKLE 변형 블록 암호 또는 순열 설계 시 ASIMD 기반 제안구현이 더 효율적이므로 유용한 자료로써 활용 가능하다.

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]
신한범, 홍석희, 김성겸, 서석충, 권동근, 김선엽, 김인성, 김규상, 이명훈, "Efficient Implementation of NIST LWC SPARKLE on 64-Bit ARMv8," Journal of The Korea Institute of Information Security and Cryptology, vol. 33, no. 3, pp. 401-410, 2023. DOI: 10.13089/JKIISC.2023.33.3.401.

[ACM Style]
신한범, 홍석희, 김성겸, 서석충, 권동근, 김선엽, 김인성, 김규상, and 이명훈. 2023. Efficient Implementation of NIST LWC SPARKLE on 64-Bit ARMv8. Journal of The Korea Institute of Information Security and Cryptology, 33, 3, (2023), 401-410. DOI: 10.13089/JKIISC.2023.33.3.401.