Improved Plantard Arithmetic for Lattice-based Cryptography

Authors

  • Junhao Huang Guangdong Provincial Key Laboratory of Interdisciplinary Research and Application for Data Science, BNU-HKBU United International College, Zhuhai, China
  • Jipeng Zhang Nanjing University of Aeronautics and Astronautics, Nanjing, China
  • Haosong Zhao Guangdong Provincial Key Laboratory of Interdisciplinary Research and Application for Data Science, BNU-HKBU United International College, Zhuhai, China
  • Zhe Liu Nanjing University of Aeronautics and Astronautics, Nanjing, China; Zhejiang Lab, Hangzhou, China
  • Ray C. C. Cheung City University of Hong Kong, Hong Kong, China
  • Çetin Kaya Koç University of California Santa Barbara, Santa Barbara, USA; Nanjing University of Aeronautics and Astronautics, Nanjing, China
  • Donglong Chen Guangdong Provincial Key Laboratory of Interdisciplinary Research and Application for Data Science, BNU-HKBU United International College, Zhuhai, China

DOI:

https://doi.org/10.46586/tches.v2022.i4.614-636

Keywords:

Kyber, NTTRU, NTT, Cortex-M4, modular arithmetic, lattice-based cryptography

Abstract

This paper presents an improved Plantard’s modular arithmetic (Plantard arithmetic) tailored for Lattice-Based Cryptography (LBC). Based on the improved Plantard arithmetic, we present faster implementations of two LBC schemes, Kyber and NTTRU, running on Cortex-M4. The intrinsic advantage of Plantard arithmetic is that one multiplication can be saved from the modular multiplication of a constant. However, the original Plantard arithmetic is not very practical in LBC schemes because of the limitation on the unsigned input range. In this paper, we improve the Plantard arithmetic and customize it for the existing LBC schemes with theoretical proof. The improved Plantard arithmetic not only inherits its aforementioned advantage but also accepts signed inputs, produces signed output, and enlarges its input range compared with the original design. Moreover, compared with the state-of-the-art Montgomery arithmetic, the improved Plantard arithmetic has a larger input range and smaller output range, which allows better lazy reduction strategies during the NTT/INTT implementation in current LBC schemes. All these merits make it possible to replace the Montgomery arithmetic with the improved Plantard arithmetic in LBC schemes on some platforms. After applying this novel method to Kyber and NTTRU schemes using 16-bit NTT on Cortex-M4 devices, we show that the proposed design outperforms the known fastest implementation that uses Montgomery and Barrett arithmetic. Specifically, compared with the state-of-the-art Kyber implementation, applying the improved Plantard arithmetic in Kyber results in a speedup of 25.02% and 18.56% for NTT and INTT, respectively. Compared with the reference implementation of NTTRU, our NTT and INTT achieve speedup by 83.21% and 78.64%, respectively. As for the LBC KEM schemes, we set new speed records for Kyber and NTTRU running on Cortex-M4.

Downloads

Published

2022-08-31

How to Cite

Huang, J., Zhang, J., Zhao, H., Liu, Z., Cheung, R. C. C., Koç, Çetin K., & Chen, D. (2022). Improved Plantard Arithmetic for Lattice-based Cryptography. IACR Transactions on Cryptographic Hardware and Embedded Systems, 2022(4), 614–636. https://doi.org/10.46586/tches.v2022.i4.614-636

Issue

Section

Articles