Lightweight Cryptographic Protocols for Resource-Constrained IoT Devices: Performance Benchmarking of PRESENT, SIMON, SPECK, and ChaCha20 on ARM Cortex-M Microcontrollers
The deployment of cryptographic security protocols on resource-constrained IoT devices -- characterized by limited CPU clock speeds (typically 8-120 MHz), kilobytes of RAM, and stringent energy budgets -- demands careful selection of cryptographic primitives that balance security assurance with computational and energy overhead. This paper presents a rigorous benchmarking study of four lightweight cryptographic algorithms -- PRESENT (block cipher), SIMON and SPECK (NSA lightweight cipher family), and ChaCha20 (stream cipher) -- implemented on four representative ARM Cortex-M microcontroller platforms: STM32L0, STM32F4, nRF52832, and SAMD21. Each implementation is evaluated across six performance dimensions: encryption throughput (bytes per second), energy consumption per kilobyte encrypted (microjoules), code size (bytes), RAM footprint, side-channel attack resistance profile, and implementation complexity. ChaCha20 achieves the highest throughput on 32-bit Cortex-M4 platforms (4.2 MB/s at 3.3V), while PRESENT demonstrates the lowest energy consumption on 8-bit equivalent Cortex-M0 platforms. We introduce a Cryptographic Suitability Index (CSI) that aggregates performance dimensions weighted by IoT deployment profile (battery life vs throughput vs security assurance priority) and provide a deployment decision matrix covering 12 common IoT use case categories. This work provides IoT architects with empirically grounded primitives selection guidance calibrated to production hardware constraints.