Homomorphic Encryption (HE) is an elegant cryptographic solution to prevent invasion of privacy while keeping the conveniences of cloud computing. Using HE, user can upload its encrypted data to the cloud and can still perform computation (e.g., evaluate a model) on the encrypted data. However, software implementations of HE are very slow. Hence, this research proposal is aimed at designing an accelerator architecture for homomorphic computing on encrypted data.
Specifically, we will design a hardware/software codesign library, targeting new-generation CPU-FPGA heterogeneous platforms, for the state-of-the-art Residue Number System (RNS) variant of the CKKS homomorphic encryption scheme which we call RNS-CKKS in this proposal. The RNS-CKKS scheme is currently the best performing homomorphic encryption scheme for arithmetic of approximate numbers over encryption. We will design high-speed and parallel algorithms for the building blocks used in homomorphic addition and multiplications procedures of RNS-CKKS, reduce on-chip memory access and off-chip communication overheads, and introduce parallel processing at different layers of the implementation hierarchy. We will also study feasibilities of accelerating the bootstrapping procedure of RNS-CKKS on FPGA platforms.
This research project will deliver optimized algorithms, codesign methodologies and source codes of a high-performance, scalable and energy-efficient accelerator for the RNS-CKKS homomorphic encryption scheme. We expect that the accelerator will be able to reduce both computation time and power consumption by orders of magnitude with respect to existing software implementations, making the accelerator attractive and economical for Samsung SDS and cloud service providers in general.