DOI QR코드

DOI QR Code

Optimized Implementation of Block Cipher PIPO in Parallel-Way on 64-bit ARM Processors

64-bit ARM 프로세서 상에서의 블록암호 PIPO 병렬 최적 구현

  • 엄시우 (한성대학교 IT융합공학부) ;
  • 권혁동 (한성대학교 정보컴퓨터공학과) ;
  • 김현준 (한성대학교 정보컴퓨터공학과) ;
  • 장경배 (한성대학교 정보컴퓨터공학과) ;
  • 김현지 (한성대학교 IT융합공학부) ;
  • 박재훈 (한성대학교 IT융합공학부) ;
  • 송경주 (한성대학교 IT융합공학부) ;
  • 심민주 (한성대학교 IT융합공학부) ;
  • 서화정 (한성대학교 IT융합공학부)
  • Received : 2021.06.17
  • Accepted : 2021.07.14
  • Published : 2021.08.31

Abstract

The lightweight block cipher PIPO announced at ICISC'20 has been effectively implemented by applying the bit slice technique. In this paper, we propose a parallel optimal implementation of PIPO for ARM processors. The proposed implementation enables parallel encryption of 8-plaintexts and 16-plaintexts. The implementation targets the A10x fusion processor. On the target processor, the existing reference PIPO code has performance of 34.6 cpb and 44.7 cpb in 64/128 and 64/256 standards. Among the proposed methods, the general implementation has a performance of 12.0 cpb and 15.6 cpb in the 8-plaintexts 64/128 and 64/256 standards, and 6.3 cpb and 8.1 cpb in the 16-plaintexts 64/128 and 64/256 standards. Compared to the existing reference code implementation, the 8-plaintexts parallel implementation for each standard has about 65.3%, 66.4%, and the 16-plaintexts parallel implementation, about 81.8%, and 82.1% better performance. The register minimum alignment implementation shows performance of 8.2 cpb and 10.2 cpb in the 8-plaintexts 64/128 and 64/256 specifications, and 3.9 cpb and 4.8 cpb in the 16-plaintexts 64/128 and 64/256 specifications. Compared to the existing reference code implementation, the 8-plaintexts parallel implementation has improved performance by about 76.3% and 77.2%, and the 16-plaintext parallel implementation is about 88.7% and 89.3% higher for each standard.

ICISC'20에서 발표된 경량 블록암호 PIPO는 비트 슬라이스 기법 적용으로 효율적인 구현이 되었으며, 부채널 내성을 지니기에 안전하지 않은 환경에서도 안정적으로 사용 가능한 경량 블록암호이다. 본 논문에서는 ARM 프로세서를 대상으로 PIPO의 병렬 최적 구현을 제안한다. 제안하는 구현물은 8평문, 16평문의 병렬 암호화가 가능하다. 구현에는 최적의 명령어 활용, 레지스터 내부 정렬, 로테이션 연산 최적화 기법을 사용하였다. 또한 레지스터 내부 정렬을 매 라운드마다 진행하는 구현물과, 정렬을 최소화하는 구현물 두 종류로 구분하여 구현한다. 구현은 A10x fusion 프로세서를 대상으로 한다. 대상 프로세서 상에서, 기존 레퍼런스 PIPO 코드는 64/128, 64/256 규격에서 각각 34.6 cpb, 44.7 cpb의 성능을 가지나, 제안하는 기법 중, 일반 구현물은 8평문 64/128, 64/256 규격에서 각각 12.0 cpb, 15.6 cpb, 16평문 64/128, 64/256 규격에서 각각 6.3 cpb, 8.1 cpb의 성능을 보여준다. 이는 기존 대비 각 규격별로 8평문 병렬 구현물은 약 65.3%, 66.4%, 16평문 병렬 구현물은 약 81.8%, 82.1% 더 좋은 성능을 보인다. 레지스터 최소 정렬 구현물은 8평문 64/128, 64/256 규격에서 각각 8.2 cpb, 10.2 cpb, 16평문 64/128, 64/256 규격에서 각각 3.9 cpb, 4.8 cpb의 성능을 보여준다. 이는 기존 레퍼런스 코드 구현물 대비 각 규격별로 8평문 병렬 구현물은 약 76.3%, 77.2%, 16평문 병렬 구현물은 약 88.7% 89.3% 더 향상된 성능을 가진다.

Keywords

Acknowledgement

이 논문은 부분적으로 2021년도 정부(과학기술정보통신부)의 재원으로 정보통신기술진흥센터의 지원을 받아 수행된 연구임(No.2018-0-00264, IoT 융합형 블록체인 플랫폼 보안 원천 기술 연구, 50%) 그리고 이 논문은 부분적으로 2021년도 정부(과학기술정보통신부)의 재원으로 정보통신기획평가원의 지원을 받아 수행된 연구임(No.2021-0-00540, GPU/ASIC 기반 암호알고리즘 고속화 설계 및 구현 기술개발, 50%).

References

  1. A. Heuser, S. Picek, S. Guilley, and N. Mentens, "Side-channel analysis of lightweight ciphers: Does lightweight equal easy?," Lecture Notes in Computer Science, Vol.10155, pp.91-104, 2017.
  2. H. G. Kim, et al., "A new method for designing lightweight S-boxes with high differential and linear branch numbers, and its application," International Conference on Information Security and Cryptology (ICISC 2020), Seoul, Korea, pp.62, 2020.
  3. H. J. Seo, Z. Liu, P. Longa, and Z. Hu, "SIDH on ARM: Faster modular multiplications for faster post-quantum supersingular isogeny key exchange," Conference on Cryptographic Hardware and Embedded Systems (CHES 2018), Amsterdam, Netherlands, pp.19, 2018.
  4. J. G. Song and S. C. Seo, "Secure and fast implementation of ARX-Based block ciphers using ASIMD instructions in ARMv8 platforms," in IEEE Access, Vol.8, pp.193138-193153, 2020. https://doi.org/10.1109/ACCESS.2020.3032785
  5. H. J. Seo, "High speed implementation of LEA on ARMv8," The Korea Institute of Information and Commucation Engineering, Vol.21, No.10, pp.1929-1934, 2017.
  6. J. G. Song and S. C. Seo, "Efficient parallel implementation of CTR mode of ARX-Based block ciphers on ARMv8 microcontrollers," in MDPI Applied Sciences, Vol.11, No.6, pp.1-28, 2021.