Paper 2015/818
cuHE: A Homomorphic Encryption Accelerator Library
Wei Dai and Berk Sunar
Abstract
We introduce a CUDA GPU library to accelerate evaluations with homomorphic schemes defined over polynomial rings enabled with a number of optimizations including algebraic techniques for efficient evaluation, memory minimization techniques, memory and thread scheduling and low level CUDA hand-tuned assembly optimizations to take full advantage of the mass parallelism and high memory bandwidth GPUs offer. The arithmetic functions constructed to handle very large polynomial operands using number-theoretic transform (NTT) and Chinese remainder theorem (CRT) based methods are then extended to implement the primitives of the leveled homomorphic encryption scheme proposed by Löpez-Alt, Tromer and Vaikuntanathan. To compare the performance of the proposed CUDA library we implemented two applications: the Prince block cipher and homomorphic sorting algorithms on two GPU platforms in single GPU and multiple GPU configurations. We observed a speedup of 25 times and 51 times over the best previous GPU implementation for Prince with single and triple GPUs, respectively. Similarly for homomorphic sorting we obtained 12-41 times speedup depending on the number and size of the sorted elements.
Metadata
- Available format(s)
- Category
- Implementation
- Publication info
- Published elsewhere. The second annual International Conference on Cryptography and Information Security BalkanCryptSec 2015
- Keywords
- Homomorphic evaluationGPU accelerationlarge polynomial arithmetic
- Contact author(s)
- wdai @ wpi edu
- History
- 2015-08-18: received
- Short URL
- https://ia.cr/2015/818
- License
-
CC BY
BibTeX
@misc{cryptoeprint:2015/818, author = {Wei Dai and Berk Sunar}, title = {{cuHE}: A Homomorphic Encryption Accelerator Library}, howpublished = {Cryptology {ePrint} Archive, Paper 2015/818}, year = {2015}, url = {https://eprint.iacr.org/2015/818} }