International Conference on Cryptography and Information Security in the Balkans

Cryptography and Information Security in the Balkans pp 169-186

cuHE: A Homomorphic Encryption Accelerator Library

Conference paper

DOI: 10.1007/978-3-319-29172-7_11

Part of the Lecture Notes in Computer Science book series (LNCS, volume 9540)
Cite this paper as:
Dai W., Sunar B. (2016) cuHE: A Homomorphic Encryption Accelerator Library. In: Pasalic E., Knudsen L. (eds) Cryptography and Information Security in the Balkans. Lecture Notes in Computer Science, vol 9540. Springer, Cham


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.


Homomorphic evaluation GPU acceleration Large polynomial arithmetic 

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  1. 1.Worcester Polytechnic InstituteWorcesterUSA

Personalised recommendations