IP Library › Granted Patent US 12,726,332
Granted Patent B2
US 12,726,332 · App. 18/965,471 · Granted Sep 1, 2026

Semi-custom accelerator device for bootstrappable fully homomorphic encryption

Inventors: Rashmi S. Agrawal (Cambridge, MA); Ajay J. Joshi (Lexington, MA)
Assignee: Trustees of Boston University
H04L9/008
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,726,332
App. No.
18/965,471
Granted
Sep 1, 2026
Kind
B2
Abstract

An FPGA-based accelerator for bootstrappable fully homomorphic encryption (FHE) employs (1) acceleration of scalar arithmetic operations using a multi-word approach for efficient utilization of standard-width components (multipliers/adders) on custom-width operands; (2) a performant, shift-based modular reduction technique that avoids the need for expensive multipliers; (3) an improved datapath for an expensive Key Switch operation; and (4) an efficient organization of on-chip memory for storing custom-width operands and supplying them at high bandwidth to computation units.

Claims (21)

1 . A computing device comprising an FPGA semi-custom accelerator device for hardware acceleration of modular arithmetic operations in a cryptography system, the semi-custom accelerator device including an array of N sets of functional units configured for parallel operation on corresponding ones of N streams of c-bit-width coefficients and producing corresponding ones of N streams of results, comprising:

an interface to a host CPU configured to execute a fully homomorphic encryption (FHE) application using the FPGA semi-custom accelerator device for bootstrappable FHE (FAB) operations with selection of parameters that are optimized for hardware constraints;

on-chip memory for storing operands and results, wherein the memory has one or more banks each organized as a two-dimensional arrangement of fixed-size memory units of bit-width m≠c, the two-dimensional arrangement having a width W and depth D of memory units, W being selected to enable storage of an integer number Wm/c of the c-bit-width coefficients across the width of the arrangement, D being selected as a quotient N/(Wm/c) to enable simultaneous retrieval of N coefficients in a single memory access cycle; and

an arithmetic unit coupled to the memory to receive the operands and produce the results, the arithmetic unit including (1) a plurality standard arithmetic blocks configured to operate on corresponding distinct portions of the operands and produce corresponding distinct portions of the results, and (2) custom logic interconnecting the arithmetic blocks in a manner providing for an overall arithmetic operation to produce the results at full-width,

wherein the array of N sets of functional units efficiently utilizes the memory units of the FPGA on-chip memory and maps data width of the coefficients to that of the memory banks to enable storage of up to a predetermined amount of data on-chip to reduce resource overhead.

2 . The computing device of claim 1 , wherein the custom logic includes (1) pipeline registers for receiving respective portions of modulus values and time-aligning them with respective outputs of the arithmetic blocks, (2) additional standard arithmetic blocks for operating on respective time-aligned portions of modulus values and outputs of the arithmetic blocks to produce respective portions of modulus-reduced arithmetic results, and (3) selection logic for selecting between the outputs of the arithmetic blocks and the modulus-reduced arithmetic results to produce the full-width results.

3 . The computing device of claim 2 , wherein the selection logic is configured to realize a multi-condition selection based on values of respective carry outputs from the standard arithmetic blocks, the multi-condition selection being based partly on a most-significant carry output being asserted and there being corresponding selection-specific mathematical relationships between the time-aligned portions of modulus values and the respective outputs of the p arithmetic blocks.

4 . The computing device of claim 1 , wherein the FPGA semi-custom accelerator device further includes:

a modular reduction unit coupled to the arithmetic unit to receive non-reduced values and produce corresponding reduced values, the modular reduction unit including (1) a shifter operative to produce a first intermediate value v1 by a predetermined number of shifts of a second intermediate value v2, (2) an adder to produce v2 by adding v1 to a pre-computed modulus adder value, and (3) second custom logic to (a) first initialize v2 to a most-significant part of a non-reduced value from the arithmetic unit, (b) then iteratively operate the shifter and adder over successive cycles to produce a final second intermediate value v2f, and (c) then combine v2f with a least-significant part of the non-reduced value from the arithmetic unit to produce the corresponding reduced value.

5 . The computing device of claim 4 , wherein the modular reduction unit is further configured and operative to perform modular reduction with respect to a set of prime elements stored as respective arrays in the memory.

6 . The computing device of claim 1 further providing for hardware acceleration of a key switch operation of the FHE application, the key switch operation converting a first ciphertext M1 decryptable under a first key to a same-message second ciphertext M2 decryptable under a distinct second key, wherein:

the memory is further configured for storing operands and results of the key switch operation; and

the FPGA semi-custom accelerator device further includes a set of computing elements including a decomposition unit, an up-modulus unit, an inner product unit, and a down-modulus unit, the decomposition unit configured to generate blocks of first limbs of M1, the inner product unit having first and second sub-units, the first sub-unit configured to perform a first part of an inner product operation on the first limbs from the decomposition unit and producing an intermediate result, the second sub-unit configured to perform a remaining part of the inner product operation using the intermediate result and extended limbs generated by the up-modulus unit from the first limbs, the down-modulus unit configured to perform a modulus-reducing operation on extended-modulus results from the inner product unit to produce M2.

7 . The computing device of claim 6 , wherein the first part of the inner product operation includes providing the first limbs in evaluation representation to the up-modulus unit to generate the extended limbs for use in the remaining part of the inner product operation, while avoiding use of off-chip memory for temporarily storing the limbs in coefficient representation after an up-modulus operation.

8 . The computing device of claim 1 , wherein the FPGA semi-custom accelerator device further includes an Automorph unit which performs permutation for a Rotate operation of the FHE application.

9 . The computing device of claim 8 , wherein the permutation by the Automorph unit includes reading a polynomial from the on-chip memory and store storing the polynomial in a register file in a permuted order per a given rotation index k.

10 . The computing device of claim 1 , wherein:

the cryptography system employs a cyphertext modulus Q with associated operand bit-width log q ( v q);

the operands and results stored in the memory and operated upon by the arithmetic unit are v q-width operands and v q-width results; and

the standard arithmetic blocks of the arithmetic unit (1) are p in number and have v q/p bit-width, (2) operate on corresponding distinct v q/p-width portions of the v q-width operands and produce corresponding distinct v q/p-width portions of the v q-width results, and (3) are interconnected by the custom logic in a manner providing for an overall v q-width arithmetic operation to produce the v q-width results from the v q-width operands.

11 . The computing device of claim 10 , wherein p=2.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2024
From: AGRAWAL, RASHMI S.; JOSHI, AJAY J.
To: TRUSTEES OF BOSTON UNIVERSITY
Reel/Frame 069566/0884 →
Continuity (3)
Continuation 18742330 · Jun 13, 2024
Provisional Application 63472954 · Jun 14, 2023
Related Publication 20250097009A1 · Mar 20, 2025
References Cited (53)
US 10387122B1 · Olsen · 2019 [cited by examiner]
US 20040016002A1 · Handelman · 2004 [cited by examiner]
US 20070075746A1 · Fruhauf · 2007 [cited by examiner]
US 20160350077A1 · Peeters · 2016 [cited by examiner]
US 20180004270A1 · Journet · 2018 [cited by examiner]
US 20180315398A1 · Kaul · 2018 [cited by examiner]
US 20190044717A1 · Loisel · 2019 [cited by examiner]
US 20200067693A1 · Lhermet · 2020 [cited by examiner]
US 20200310761A1 · Rossi · 2020 [cited by examiner]
US 20210211869A1 · Lee · 2021 [cited by examiner]
US 20210320796A1 · Koziel · 2021 [cited by examiner]
US 20220012593A1 · Huang · 2022 [cited by examiner]
US 20220180158A1 · Whatmough · 2022 [cited by examiner]
US 20220255742A1 · Koziel · 2022 [cited by examiner]
US 20220405221A1 · Wang · 2022 [cited by examiner]
US 20230008622A1 · Boyd · 2023 [cited by examiner]
US 20230025869A1 · Rao · 2023 [cited by examiner]
US 20230027423A1 · Rao · 2023 [cited by examiner]
US 20230141837A1 · Moon · 2023 [cited by examiner]
US 20230188322A1 · Bajpeyi · 2023 [cited by examiner]
US 20230291541A1 · Gupta · 2023 [cited by examiner]
US 20240078283A1 · Gradstein · 2024 [cited by examiner]
US 20240160771A1 · Hansen et al. · 2024 [cited by applicant]
Aikata, et al.; “Kavach: Lightweight masking techniques for polynomial arithmetic in lattice-based cryptography,” TCHES 2023, vol. 2023, No. 3, pp. 366-390. [cited by applicant]
Aikata, et al.; “REED: Chiplet-based Accelerator for Fully Homomorphic Encryption,” Arxiv 2308.02885v2, May 1, 2024, pp. 1-18. [cited by applicant]
Arrufat; “Optimisation and evaluation of the CraterLake FHE accelerator on FPGA,” MIT, Apr. 2024, pp. 109. [cited by applicant]
Cilardo, et al.; “Securing the Cloud with Reconfigurable Computing: An FPGA Accelerator for Homomorphic Encryption,” Design, Automation and Test in Europe (DATE) 2016, Mar. 14-18, 2016, pp. 1622-1627. [cited by applicant]
Cousins, et al.; “An FPGA Co-Processor Implementation of Homomorphic Encryption,” HPEC 2014, Sep. 9-11, 2014, pp. 1-6. [cited by applicant]
Cousins, et al.; “Designing an FPGA-Accelerated Homomorphic Encryption Co-Processor,” IEEE Transactions on Emerging Topics in Computing, vol. 5, Issue 2, 2016, pp. 193-206. [cited by applicant]
Feldmann, et al.; “F1: A Fast and Programmable Accelerator for Fully Homomorphic Encryption,” MICRO 2021, Oct. 18-22, 2021, pp. 238-252. [cited by applicant]
Gener, et al.; “An FPGA-based Programmable Vector Engine for Fast Fully Homomorphic Encryption over the Torus,” Secure and Private Systems for Machine Learning (ISCA Workshop), 2021, pp. 1-7. [cited by applicant]
Hirner, et al.; “Proteus: A Pipelined NTT Architecture Generator,” IEEE Transactions on Very Large Scale Integration Systems, vol. XX, No. 18, Feb. 2024, pp. 1-11. [cited by applicant]
Jung, et al.; “Accelerating Fully Homomorphic Encryption Through Architecture-Centric Analysis and Optimization,” IEEE Access, vol. 9, 2021, pp. 98772-98789. [cited by applicant]
Kim, et al.; “ARK: Fully Homomorphic Encryption Accelerator with Runtime Data Generation and Inter-Operation Key Reuse,” MICRO 2022, Oct. 1-5, 2022, pp. 1237-1254. [cited by applicant]
Kim, et al.; “BTS: An Accelerator for Bootstrappable Fully Homomorphic Encryption,” ISCA 2022, Jun. 18-22, 2022, pp. 711-725. [cited by applicant]
Kim, et al.; “SHARP: A Short-Word Hierarchical Accelerator for Robust and Practical Fully Homomorphic Encryption,” ISCA 2023, Jun. 17-21, 2023, pp. 1-15. [cited by applicant]
Krieger, et al.; “Aloha-HE: A Low-Area Hardware Accelerator for Client-Side Operations in Homomorphic Encryption,” Date 2024, pp. 1-6. [cited by applicant]
Mkhinini, et al.; “HLS Design of a Hardware Accelerator for Homomorphic Encryption,” IEEE Design and Diagnostics of Electronic Circuits and Systems (DDECS) 2017, Apr. 19-21, 2017, pp. 1-6. [cited by applicant]
Mukherjee, et al.; “ModHE: Modular Homomorphic Encryption Using Module Lattices Potentials and Limitations,” Cryptology eprint, 2023/895, pp. 1-36. [cited by applicant]
Ozturk, et al.; “A Custom Accelerator for Homomorphic Encryption Applications,” IEEE Transactions on Computers, vol. 66, No. 1, Jan. 2017, pp. 3-16. [cited by applicant]
Reagen, et al.; “Cheetah: Optimizing and Accelerating Homomorphic Encryption for Private Inference,” 2021 IEEE International Symposium on High-Performance Computer Architecture (HPCA), Feb. 27 to Mar. 3, 2021, pp. 26-39. [cited by applicant]
Riazi, et al.; “HEAX: An Architecture for Computing on Encrypted Data,” ASPLOS 2020, Mar. 16-20, 2020, pp. 1295-1309. [cited by applicant]
Roy, et al.; “FPGA-based High-Performance Parallel Architecture for Homomorphic Computing on Encrypted Data,” 2019 IEEE International Symposium on High Performance Computer Architecture (HPCA), Feb. 16-20, 2019, pp. 387… [cited by applicant]
Roy, et al.; “HEPCloud: An FPGA-based Multicore Processor for FV Somewhat Homomorphic Function Evaluation,” IEEE Transactions on Computers, vol. 67, No. 11, 2018, pp. 1637-1650. [cited by applicant]
Samardzic, et al.; “BitPacker: Enabling High Arithmetic Eciency in Fully Homomorphic Encryption Accelerators,” ASPLOS 2024, Apr. 27-May 1, 2024, pp. 137-150. [cited by applicant]
Samardzic, et al.; “CraterLake: A Hardware Accelerator for Efficient Unbounded Computation on Encrypted Data,” ISCA 2022, Jun. 18-22, 2022, pp. 173-187. [cited by applicant]
Samardzic; “Making Computation on Encrypted Data Practical through Hardware Acceleration of Fully Homomorphic Encryption,” MIT, May 2022, pp. 1-87. [cited by applicant]
Su, et al.; “FPGA-Based Hardware Accelerator for Leveled Ring-LWE Fully Homomorphic Encryption,” IEEE Access, vol. 8, 2020, pp. 168008-168025. [cited by applicant]
Syafalni, et al.; “Efficient Homomorphic Encryption Accelerator With Integrated PRNG Using Low-Cost FPGA,” IEEE Access, vol. 10, 2022, pp. 7753-7771. [cited by applicant]
Turan, et al.; “HEAWS: An Accelerator for Homomorphic Encryption on the Amazon AWS FPGA,” IEEE Transactions on Computers, vol. 69, No. 8, Aug. 2020, pp. 1185-1196. [cited by applicant]
Wang, et al.; “FPGA Implementation of a Large-Number Multiplier for Fully Homomorphic Encryption,” ISCAS 2013, May 19-23, 2013, pp. 2589-2592. [cited by applicant]
Yang, et al.; “FPGA-Based Hardware Accelerator of Homomorphic Encryption for Efficient Federated Learning,” Arxiv:2007.10560v1, Jul. 21, 2020, pp. 1-7. [cited by applicant]
Zhang, et al.; “SoK: Fully Homomorphic Encryption Accelerators,” ACM Computing Surveys, Jul. 5, 2024, pp. 1-31. [cited by applicant]