Investigation of the expediency of using AVX512 for the implementation of modern algorithms for electronic signatures
Development and investigation of electronic signatures on algebraic lattices is one of the promising directions in post-quantum cryptography. Cryptosystems CRYSTALS-Dilithium and Falcon represent lattice cryptography in the category of electronic signatures in the NIST PQC open competition among the finalists. Most operations in these cryptosystems are reduced to addition and multiplication of polynomials in a finite field with a generating cyclotomic polynomial xN + 1. Using such a field allows the use of a number-theoretic transformation (NTT) to create fast and reliable software implementations. In practice, vectorized set (SIMD) instructions are used to achieve good performance. AVX2 instructions are most often used among existing implementations. At the same time, the possibility of using AVX512 instructions remains little explored. The purpose of this work is to investigate the feasibility of applying AVX512 instructions to optimization of the NTT, used in modern EPs on algebraic lattices. In particular, the paper presents a method for implementing a number-theoretic transformation using AVX512 for CRYSTALS-Dilithium and Falcon. An increase in performance is shown in comparison with the reference optimized author's implementations.