Intel HEXL: accelerating homomorphic encryption with Intel AVX512-IFMA52

F Boemer, S Kim, G Seifu, F DM de Souza… - Proceedings of the 9th …, 2021 - dl.acm.org
F Boemer, S Kim, G Seifu, F DM de Souza, V Gopal
Proceedings of the 9th on Workshop on Encrypted Computing & Applied …, 2021dl.acm.org
Modern implementations of homomorphic encryption (HE) rely heavily on polynomial
arithmetic over a finite field. This is particularly true of the BGV, BFV, and CKKS HE
schemes. Two of the biggest performance bottlenecks in HE primitives and applications are
polynomial modular multiplication and the forward and inverse number-theoretic transform
(NTT). Here, we introduce Intel® Homomorphic Encryption Acceleration Library (Intel®
HEXL), a C++ library which provides optimized implementations of polynomial arithmetic for …
Modern implementations of homomorphic encryption (HE) rely heavily on polynomial arithmetic over a finite field. This is particularly true of the BGV, BFV, and CKKS HE schemes. Two of the biggest performance bottlenecks in HE primitives and applications are polynomial modular multiplication and the forward and inverse number-theoretic transform (NTT). Here, we introduce Intel® Homomorphic Encryption Acceleration Library (Intel® HEXL), a C++ library which provides optimized implementations of polynomial arithmetic for Intel® processors. Intel HEXL takes advantage of the recent Intel® Advanced Vector Extensions 512 (Intel® AVX512) instruction set to provide state-of-the-art implementations of the NTT and modular multiplication, measuring up to 7.2x single-threaded speedup over a native C++ baseline. Intel HEXL is available open-source at https://github.com/intel/hexl under the Apache 2.0 license and has been adopted by the Microsoft SEAL and PALISADE homomorphic encryption libraries
ACM Digital Library