code
Our scheme is currently under submission and constant revision. But you can find some of our code here:
C:
Our C implementation can be found here.
The library provides a reference, optimized and Intel AVX2 optimized implementation.
AES-NI is used by default, if available, in the optimized versions.
They can be built in this way:
- Reference: build with CMake with the option:
-DMAYO_BUILD_TYPE=ref
. - Optimize: build with CMake with the option:
-DMAYO_BUILD_TYPE=opt
. - Intel AVX2 Optimize: build with CMake with the option for avx2 op:
-DMAYO_BUILD_TYPE=avx2
.
Arm Cortex-M4:
Our Arm Cortex-M4 implementation can be found here. It has also been merged into pqm4.
Sage:
Our pure sage implementation can be found here.
Golang:
Our golang implementation can be found here.