TY - GEN
T1 - OpenFHE
T2 - 10th Workshop on Encrypted Computing and Applied Homomorphic Cryptography, WAHC 2022 - Co-located with CCS 2022
AU - Al Badawi, Ahmad
AU - Bates, Jack
AU - Bergamaschi, Flavio
AU - Cousins, David Bruce
AU - Erabelli, Saroja
AU - Genise, Nicholas
AU - Halevi, Shai
AU - Hunt, Hamish
AU - Kim, Andrey
AU - Lee, Yongwoo
AU - Liu, Zeyu
AU - Micciancio, Daniele
AU - Quah, Ian
AU - Polyakov, Yuriy
AU - R.v, Saraswathy
AU - Rohloff, Kurt
AU - Saylor, Jonathan
AU - Suponitsky, Dmitriy
AU - Triplett, Matthew
AU - Vaikuntanathan, Vinod
AU - Zucca, Vincent
N1 - Funding Information:
The development of HAL and related features has been funded in part by the DARPA DPRIVE program. These features are expected to support the ASIC-based hardware acceleration of cryptographic protocols implemented in OpenFHE, which is one of the goals of DARPA DPRIVE.
Funding Information:
Distribution Statement "A" (Approved for Public Release, Distribution Unlimited). This work is supported in part by DARPA through HR0011-21-9-0003 and HR0011-20-9-0102. The views, opinions, and/or findings expressed are those of the author(s) and should not be interpreted as representing the official views or policies of the Department of Defense or the U.S. Government.
Funding Information:
The original DM cryptosystem [29] and the original CGGI cryp-tosystem [24] were designed for evaluating arbitrary Boolean circuits, i.e., mod 2 arithmetic. OpenFHE supports this basic functionality ( = 2). The library also supports operations for larger plaintext moduli. Arbitrary function evaluation is supported for = 8, and can be extended to larger moduli by using the homomorphic digit decomposition procedure [45]. The homomorphic comparison/sign evaluation can be performed for plaintext moduli up to = 221 (a current limitation of the implementation), with the underlying algorithm supporting arbitrary precision. To implement these features, OpenFHE uses the large-precision algorithms proposed in [45]. The development of these capabilities was funded by the DARPA Cooperative Secure Learning (CSL) program.
Publisher Copyright:
© 2022 ACM.
PY - 2022/11/7
Y1 - 2022/11/7
N2 - Fully Homomorphic Encryption (FHE) is a powerful cryptographic primitive that enables performing computations over encrypted data without having access to the secret key. We introduce OpenFHE, a new open-source FHE software library that incorporates selected design ideas from prior FHE projects, such as PALISADE, HElib, and HEAAN, and includes several new design concepts and ideas. The main new design features can be summarized as follows: (1) we assume from the very beginning that all implemented FHE schemes will support bootstrapping and scheme switching; (2) OpenFHE supports multiple hardware acceleration backends using a standard Hardware Abstraction Layer (HAL); (3) OpenFHE includes both user-friendly modes, where all maintenance operations, such as modulus switching, key switching, and bootstrapping, are automatically invoked by the library, and compiler-friendly modes, where an external compiler makes these decisions. This paper focuses on high-level description of OpenFHE design, and the reader is pointed to external OpenFHE references for a more detailed/technical description of the software library.
AB - Fully Homomorphic Encryption (FHE) is a powerful cryptographic primitive that enables performing computations over encrypted data without having access to the secret key. We introduce OpenFHE, a new open-source FHE software library that incorporates selected design ideas from prior FHE projects, such as PALISADE, HElib, and HEAAN, and includes several new design concepts and ideas. The main new design features can be summarized as follows: (1) we assume from the very beginning that all implemented FHE schemes will support bootstrapping and scheme switching; (2) OpenFHE supports multiple hardware acceleration backends using a standard Hardware Abstraction Layer (HAL); (3) OpenFHE includes both user-friendly modes, where all maintenance operations, such as modulus switching, key switching, and bootstrapping, are automatically invoked by the library, and compiler-friendly modes, where an external compiler makes these decisions. This paper focuses on high-level description of OpenFHE design, and the reader is pointed to external OpenFHE references for a more detailed/technical description of the software library.
KW - bfv
KW - bgv
KW - bootstrapping
KW - cggi
KW - ckks
KW - dm
KW - fhew
KW - fully homomorphic encryption
KW - hardware acceleration
KW - heaan
KW - scheme switching
KW - software implementation
KW - tfhe
UR - http://www.scopus.com/inward/record.url?scp=85141869344&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85141869344&partnerID=8YFLogxK
U2 - 10.1145/3560827.3563379
DO - 10.1145/3560827.3563379
M3 - Conference contribution
AN - SCOPUS:85141869344
T3 - WAHC 2022 - Proceedings of the 10th Workshop on Encrypted Computing and Applied Homomorphic Cryptography, co-located with CCS 2022
SP - 53
EP - 63
BT - WAHC 2022 - Proceedings of the 10th Workshop on Encrypted Computing and Applied Homomorphic Cryptography, co-located with CCS 2022
PB - Association for Computing Machinery, Inc
Y2 - 7 November 2022
ER -