Generation of Fast Finite Field Arithmetic forCortex-M4 with ECDH and SQIsign Applications
Finite field arithmetic is central to several cryptographic algorithms on embedded devices like the ARM Cortex-M4, particularly for elliptic curve and isogenybased cryptography. However, rapid algorithm evolution, driven by initiatives such as NIST’s post-quantum standardization, might frequently render hand-optimized implementations obsolete. We address this challenge with m4-modarith, a library generating C code with inline assembly for the Cortex-M4 that rivals custom-tuned assembly, enabling agile development in this ever-changing landscape. Our generated modular multiplications obtains fast performances, competitive with hand-optimized assembly implementations published in the literature, even outperforming some of them for Curve25519. Two contributions are pivotal to this success. First, we introduce a novel multiplication strategy that matches the memory access complexity of the operand caching method while being applicable to a larger cache size for Cortex-M4 implementations. Second, we generalize an efficient pseudo-Mersenne reduction strategy, and formally prove its correctness and applicability for most primes of cryptographic interest. Our generator allowed agile optimization of SQIsign’s NIST PQC Round 2 submission, improving level 1 verification from 123 Mcycles to only 54 Mcycles, a 2.3x speedup. As an additional case study, we use our generator to improve performance of portable implementations of RFC 7748 by up to 2.2x.
Authors
- Décio Luiz Gazzoni Filho (ORCID: https://orcid.org/0000-0002-6001-2172)
- Jorge Chávez-Saab (ORCID: https://orcid.org/0000-0002-7006-1779)
- Félix Carvalho Rodrigues (ORCID: https://orcid.org/0000-0002-2776-5105)
- Julio López (ORCID: https://orcid.org/0000-0001-5139-0158)
- Michael Scott (ORCID: https://orcid.org/0000-0002-1356-1224)
- Francisco Rodríguez‐Henríquez (ORCID: https://orcid.org/0000-0002-5916-6625)
- Gora Adj (ORCID: https://orcid.org/0000-0002-9308-1510)
- Isaac A. Canales-Martínez (ORCID: https://orcid.org/0000-0002-0776-5060)
Institutions
- Universidade Estadual de Londrina (BR)
- Universidade Estadual de Campinas (UNICAMP) (BR)
- Technology Innovation Institute (AE)
Publication Details
- Journal
- IACR Transactions on Cryptographic Hardware and Embedded Systems
- Published
- 2025-09-05
- DOI
- https://doi.org/10.46586/tches.v2025.i4.588-620
- Citations
- 1
- Primary Topic
- Numerical methods for differential equations
- Type
- article
- Field-Weighted Citation Impact
- 2.63