System-level tuning significantly improves post-quantum crypto on Arm Cortex-M7
System-Level Optimization Beyond Cryptographic Kernels: An ML-KEM Case Study on Arm Cortex-M7
Cryptography and Security
Summary
Cryptography protects data but can be slow on small devices. The authors studied how to make a secure cryptographic method called ML-KEM run faster on a common microcontroller (Arm Cortex-M7). They found that optimizing beyond just the core math—like managing memory and reusing public data—can cut operation times dramatically. This shows that system-level improvements, not just code-level tweaks, are key to faster, secure cryptography on embedded devices.
What this means in practice
- •For embedded systems engineers: Accelerate post-quantum cryptographic operations on microcontrollers by optimizing memory use and system settings beyond basic code improvements.
- •For iot device developers: Implement ML-KEM with large cycle reductions by applying system-level strategies for secure communication on resource-limited IoT hardware.
Authors
Mahmoud Abdelhafeez Sayed, Mostafa Taha, Gurp Nijjer
Abstract
Recent work on embedded post-quantum cryptography has focused primarily on instruction-level optimization, including arithmetic-kernel improvements, assembly tuning, register allocation, and instruction scheduling. Using the Module-Lattice-Based Key-Encapsulation Mechanism (ML-KEM) on an Arm Cortex-M7 as a case study, we examine the additional gains available from memory-hierarchy utilization, tightly coupled memory placement, peripheral integration, clock configuration, and deterministic public-data reuse. The evaluation starts from a state-of-the-art SLOTHY-optimized implementation and covers all three ML-KEM parameter sets. Without modifying the cryptographic algorithm or standardized wire formats, the evaluated profiles without auxiliary public state reduce cycles by up to 2.5%. A selected public-data-reuse profile reduces encapsulation and decapsulation cycles by up to 74.6% and 58.8%, respectively. These results demonstrate that substantial deployment gains remain after arithmetic-kernel optimization and motivate a two-stage methodology that also examines the surrounding execution system.