Paper 2024/1515
Optimized Software Implementation of Keccak, Kyber, and Dilithium on RV{32,64}IM{B}{V}
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)
- 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
-
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} }