Paper 2024/1515

Optimized Software Implementation of Keccak, Kyber, and Dilithium on RV{32,64}IM{B}{V}

Jipeng Zhang, Nanjing University of Aeronautics and Astronautics
Yuxing Yan, Shanghai Aerospace Electronic Technology Institute
Junhao Huang, BNU-HKBU United International College; Hong Kong Baptist University
Çetin Kaya Koç, Nanjing University of Aeronautics and Astronautics; Iğdır University; University of California Santa Barbara
Abstract

With the standardization of NIST post-quantum cryptographic (PQC) schemes, optimizing these PQC schemes across various platforms presents significant research value. While most existing software implementation efforts have concentrated on ARM platforms, research on PQC implementations utilizing various RISC-V instruction set architectures (ISAs) remains limited. In light of this gap, this paper proposes comprehensive and efficient optimizations of Keccak, Kyber, and Dilithium on RV{32,64}IM{B}{V}. We thoroughly optimize these implementations for dual-issue CPUs, believing that our work on various RISC-V ISAs will provide valuable insights for future PQC deployments. Specifically, for Keccak, we revisit a range of optimization techniques, including bit interleaving, lane complementing, in-place processing, and hybrid vector/scalar implementations. We construct an optimal combination of methods aimed at achieving peak performance on dual-issue CPUs for various RISC-V ISAs. For the NTT implementations of Kyber and Dilithium, we deliver optimized solutions based on Plantard and Montgomery arithmetic for diverse RISC-V ISAs, incorporating extensive dual-issue enhancements. Additionally, we improve the signed Plantard multiplication algorithm proposed by Akoi et al. Ultimately, our testing demonstrates that our implementations of Keccak and NTT across various ISAs achieve new performance records. More importantly, they significantly enrich the PQC software ecosystem for RISC-V.

Note: This paper has been conditionally accepted (with minor revisions) by TCHES2025-1.

Metadata
Available format(s)
PDF
Category
Implementation
Publication info
Published by the IACR in TCHES 2025
Keywords
SHA-3KeccakKyberDilithiumML-KEMML-DSARISC-VRISC-V VectorPlantard ArithmeticNTT
Contact author(s)
jp-zhang @ outlook com
yanyuxing7408 @ 163 com
huangjunhao @ uic edu cn
cetinkoc @ ucsb edu
History
2024-09-30: approved
2024-09-26: received
See all versions
Short URL
https://ia.cr/2024/1515
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2024/1515,
      author = {Jipeng Zhang and Yuxing Yan and Junhao Huang and Çetin Kaya Koç},
      title = {Optimized Software Implementation of Keccak, Kyber, and Dilithium on {RV}{32,64}{IM}{B}{V}},
      howpublished = {Cryptology {ePrint} Archive, Paper 2024/1515},
      year = {2024},
      url = {https://eprint.iacr.org/2024/1515}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.