[Resource Topic] 2023/1683: Nibbling MAYO: Optimized Implementations for AVX2 and Cortex-M4

Welcome to the resource topic for 2023/1683

Title:
Nibbling MAYO: Optimized Implementations for AVX2 and Cortex-M4

Authors: Ward Beullens, Fabio Campos, Sofía Celi, Basil Hess, Matthias J. Kannwischer

Abstract:

MAYO is a popular high-calorie condiment as well as an auspicious candidate in the ongoing NIST competition for additional post-quantum signature schemes achieving competitive signature and public key sizes.
In this work, we present high-speed implementations of MAYO using the AVX2 and Armv7E-M instruction sets targeting recent x86 platforms and the Arm Cortex-M4.
Moreover, the main contribution of our work is showing that MAYO can be even faster when switching from a bitsliced representation of keys to a nibble-sliced representation.
While the bitsliced representation was primarily motivated by faster arithmetic on microcontrollers, we show that it is not necessary for achieving high performance on Cortex-M4.
On Cortex-M4, we instead propose to implement the large matrix multiplications of MAYO using the Method of the Four Russians (M4R), which allows us to achieve better performance than when using the bitsliced approach.
This results in up to 21% faster signing.
For AVX2, the change in representation allows us to implement the arithmetic much faster using shuffle instructions.
Signing takes up to 3.2 times fewer cycles and key generation and verification enjoy similar speedups.
This shows that MAYO is competitive with lattice-based signature schemes on x86 CPUs, and only a factor 2-6 slower than lattice-based signature schemes on Cortex-M4.

ePrint: https://eprint.iacr.org/2023/1683

See all topics related to this paper.

Feel free to post resources that are related to this paper below.

Example resources include: implementations, explanation materials, talks, slides, links to previous discussions on other websites.

For more information, see the rules for Resource Topics .