Masked implementations are necessary to prevent side-channel attacks on cryptographic algorithms. In this work, we provide higher-order side-channel attacks secure implementations of a post-quantum lattice-based scheme Saber. This repository contains the higher-order masked implementation of SABER on the ARM Cortex-M4 platform. Please note that these implementations have been published for demonstration and benchmarking purposes and have not gone through any leakage assessment.
The code implements an improved digit extraction procedure for BGV bootstrapping based on polyfunctions theory. The used programming languages are C++ and Magma. The implementation relies on the HElib library, which is also included in the repository. Several adaptations were made in HElib to integrate the improved digit extraction procedure.