A Lightweight FourQ Primitive on ARM Cortex-M0

2018 
We describe the implementation of FourQ, an efficient Elliptic Curve Cryptographic (ECC) primitive with 128-bit security level, on 32-bit ARM Cortex-M0 microprocessor. It is the first time to implement FourQ curve on ARM Cortex-M0, the smallest processor available among whole series ARM productions and is suitable for embedded applications, such as wireless sensor networks (WSN) and Internet of Things (IoT). In finite field arithmetic, we propose a new strategy to improve the performance of Karatsuba multi-precision multiplicaion, which is the most significant operation for FourQ. In order to achieve high performance, we also utilize assembly code to achieve all the operations of field arithmetic. In curve arithmetic, we simplify the projective coordinates of original implementation of FourQ, and optimize the memory usage of point addition and point doubling, which makes it more applicable to embedded processor and corresponding applications. By combining the excellent properties of FourQ curve and optimized modification on ARM Cortex-M0, we show that the performance of scalar multiplication of FourQ is faster than exiting works on the same target microprocessor with the same security level. Experiments show that our scalar multiplication runs in under 1972k clock cycles on the Cortex-M0, improving on the speed record ukummer curve by 25.2% and Curve25519 by 45%.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    13
    References
    1
    Citations
    NaN
    KQI
    []