HEPCloud: An FPGA-based Multicore Processor for FV Somewhat Homomorphic Function Evaluation

Show full item record



Permalink

http://hdl.handle.net/10138/308151

Citation

Roy , S S , Järvinen , K , Vliegen , J , Vercauteren , F & Verbauwhede , I 2018 , ' HEPCloud: An FPGA-based Multicore Processor for FV Somewhat Homomorphic Function Evaluation ' , IEEE Transactions on Computers , vol. 67 , no. 11 , pp. 1637-1650 . https://doi.org/10.1109/TC.2018.2816640

Title: HEPCloud: An FPGA-based Multicore Processor for FV Somewhat Homomorphic Function Evaluation
Author: Roy, Sujoy Sinha; Järvinen, Kimmo; Vliegen, Jo; Vercauteren, Frederik; Verbauwhede, Ingrid
Contributor organization: Department of Computer Science
Date: 2018-11
Language: eng
Number of pages: 14
Belongs to series: IEEE Transactions on Computers
ISSN: 0018-9340
DOI: https://doi.org/10.1109/TC.2018.2816640
URI: http://hdl.handle.net/10138/308151
Abstract: In this paper, we present an FPGA based hardware accelerator 'HEPCloud' for homomorphic evaluations of medium depth functions which has applications in cloud computing. Our HEPCloud architecture supports the polynomial ring based homomorphic encryption scheme FV for a ring-LWE parameter set of dimension 2(15), modulus size 1,228-bit, and a standard deviation 50. This parameter-set offers a multiplicative depth 36 and at least 85 bit security. The processor of HEPCloud is composed of multiple parallel cores. To achieve fast computation time for such a large parameter-set, various optimizations in both algorithm and architecture levels are performed. For fast polynomial multiplications, we use CRT with NTT and achieve two dimensional parallelism in HEPCloud. We optimize the BRAM access, use a fast Barrett like polynomial reduction method, optimize the cost of CRT, and design a fast divide-and-round unit. Beside parallel processing, we apply pipelining strategy in several of the sequential building blocks to reduce the impact of sequential computations. Finally, we implement HEPCloud on a medium-size Xilinx Virtex 6 FPGA board ML605 board and measure its on-board performance. To store the ciphertexts during a homomorphic function evaluation, we use the large DDR3 memory of the ML605 board. Our FPGA-based implementation of HEPCloud computes a homomorphic multiplication in 26.67 s, of which the actual computation takes only 3.36 s and the rest is spent for off-chip memory access. It requires about 37,551 s to evaluate the SIMON-64/128 block cipher, but the per-block timing is only about 18 s because HEPCloud processes 2,048 blocks simultaneously. The results show that FPGA-based acceleration of homomorphic function evaluations is feasible, but fast memory interface is crucial for the performance.
Subject: 113 Computer and information sciences
Peer reviewed: Yes
Usage restriction: openAccess
Self-archived version: acceptedVersion


Files in this item

Total number of downloads: Loading...

Files Size Format View
IEEETC_Roy.pdf 3.514Mb PDF View/Open

This item appears in the following Collection(s)

Show full item record