Designing a Programmable Hardware Accelerator for Fully Homomorphic Encryption
Author(s)
Feldmann, Axel S.
DownloadThesis PDF (840.6Kb)
Advisor
Sanchez, Daniel
Terms of use
Metadata
Show full item recordAbstract
Fully Homomorphic Encryption (FHE) allows computing on encrypted data, enabling secure offloading of computation to untrusted servers. Though it provides ideal security, FHE is expensive when executed in software, 4 to 5 orders of magnitude slower than computing on unencrypted data. These overheads are a major barrier to FHE's widespread adoption.
We present F1, the first FHE accelerator that is programmable, i.e., capable of executing full FHE programs. F1 builds on an in-depth architectural analysis of the characteristics of FHE computations that reveals acceleration opportunities. F1 is a wide-vector processor with novel functional units deeply specialized to FHE primitives, such as modular arithmetic, number-theoretic transforms, and structured permutations.
Due to the static nature of FHE computations, F1 uses an exposed ISA, requiring novel compilation techniques to statically schedule all compute and data movement. We design a compiler that efficiently maps FHE programs onto F1 hardware and maximizes reuse of on-chip data, helping to reduce data movement bottlenecks. The compiler leverages F1's explicitly managed scratchpad to decouple computation from data movement, a necessary ingredient in achieving high performance given the large size of FHE operands.
We evaluate F1 using cycle-accurate simulation and RTL synthesis. F1 is the first system to accelerate complete FHE programs, and outperforms state-of-the-art software implementations by gmean 6,500x and by up to 17,000x. These speedups counter most of FHE's overheads and enable new applications, like real-time private deep learning in the cloud.
Date issued
2021-06Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer SciencePublisher
Massachusetts Institute of Technology