🤖 AI Summary
This work addresses the limited support for non-RNS variants of the CKKS and BGV homomorphic encryption schemes on GPUs, where existing libraries predominantly rely on RNS-based implementations and suffer from high programming complexity. To bridge this gap, we propose LibFHE, a CUDA-Python library built on Numba that delivers the first efficient GPU implementation of non-RNS CKKS-BGV schemes. By leveraging CUDA-Python bindings and custom GPU parallel optimizations, LibFHE significantly lowers the development barrier while achieving performance comparable to highly optimized C++ libraries. Experimental results demonstrate that LibFHE matches the computational efficiency of state-of-the-art C++ implementations, yet offers substantially improved code conciseness and programmability.
📝 Abstract
It has been a decade since the fourth-generation FHE framework, CKKS, was proposed; yet, there is still no indicator pointing toward a fifth-generation successor; and in recent years, numerous studies have explored GPU acceleration to improve the efficiency of homomorphic computations. In this paper, we propose LibFHE, a high-performance GPU-accelerated framework that features CUDA-Python bindings to achieve both high-level programmability and bare-metal GPU performance for homomorphic workloads. A large majority of state-of-the-art implementations adopt the RNS-CKKS variant. In contrast, this work deliberately revisits the original (non-RNS) CKKS-BGV framework, and develops a GPU-based implementation along with corresponding optimizations. Experimental results demonstrate that optimized CUDA-Python implementations can achieve performance comparable to highly optimized C++ FHE libraries, while significantly reducing implementation complexity and improving programmability.