Paper 2015/818

cuHE: A Homomorphic Encryption Accelerator Library

Wei Dai and Berk Sunar


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.

Available format(s)
Publication info
Published elsewhere. The second annual International Conference on Cryptography and Information Security BalkanCryptSec 2015
Homomorphic evaluationGPU accelerationlarge polynomial arithmetic
Contact author(s)
wdai @ wpi edu
2015-08-18: received
Short URL
Creative Commons Attribution


      author = {Wei Dai and Berk Sunar},
      title = {cuHE: A Homomorphic Encryption Accelerator Library},
      howpublished = {Cryptology ePrint Archive, Paper 2015/818},
      year = {2015},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.