PALISADE Homomorphic Encryption Software Library – An Open-Source Lattice Crypto Software Library (original) (raw)
Attention! The PALISADE community has merged the PALISADE project into the next-gen OpenFHE open-source FHE software library. OpenFHE has all of the features of PALISADE, merged with selected capabilities of HElib and HEAAN.
We invite you to check out the OpenFHE library at https://www.openfhe.org. You can also mail the OpenFHE community leaders at contact@openfhe.org.
Thank you for your continued interest in PALISADE. Our community is committed to making security bug fixes in PALISADE, but primary development in PALISADE is moving to OpenFHE. PALISADE is an open-source project that provides efficient implementations of lattice cryptography building blocks and leading homomorphic encryption schemes.
PALISADE is designed for usability, providing simpler APIs, modularity, cross-platform support and integration of hardware accelerators. PALISADE complies with the HomomorphicEncryption.org security standards for homomorphic encryption. We offer PALISADE under the 2-clause BSD open-source license, making it easier to wrap and redistribute PALISADE in products.
PALISADE supports the BGV, BFV, CKKS, and FHEW schemes and a more secure variant of the TFHE scheme, including bootstrapping. PALISADE also provides post-quantum public-key encryption, proxy re-encryption, threshold FHE for multiparty computations, identity-based encryption, attribute-based encryption and digital signature support.
You can check on upcoming webinars and watch the prior recordings at the Webinars page.
We also have an announcements Google group that anyone can join: https://groups.google.com/a/palisade-crypto.org/d/forum/announcements
The PALISADE community has merged the PALISADE project into the next-gen OpenFHE open-source FHE software library. OpenFHE has all of the features of PALISADE, merged with selected capabilities of HElib and HEAAN.
We invite you to check out the OpenFHE library at https://www.openfhe.org. You can also mail the OpenFHE community leaders at contact@openfhe.org.
Our community is committed to making security bug fixes in PALISADE, but primary development in PALISADE is moving to OpenFHE.
Homomorphic Encryption (core PALISADE library)
PALISADE is an open source project. The current stable release of the PALISADE software library is v1.11.9. The stable release can be downloaded here.
Installation instructions and further technical documentation for the stable release are available on the PALISADE git repository wiki here.
PALISADE is under active development. The current development repository of the project can be found here.
The current development release of the PALISADE software is v1.11.2. The development release can be downloaded here. Please also see the release notes for more information on the capabilities that have not been included in the stable release yet.
We suggest experienced PALISADE users try out the current development release as it contains the latest crypto schemes as well as overall performance improvements. Once we have determined that the development release is stable, it will be migrated to the release repository.
Other Lattice-Based Cryptography Capabilities (extensions of core PALISADE library)
As of v1.11, we have moved digital signatures, identity-based/attribute-based encryption, and some research prototypes to separate git repositories (currently this change is only implemented in the master branch of the development repository). Below are the locations of the new repositories.
- Digital Signatures
- Identity-Based & Ciphertext-Policy Attribute-Based Encryption
- Research Prototypes (includes research prototypes for Key-Policy Attributed-Based Encryption and Program Obfuscation)
Ports of PALISADE to Other (non-C++) Development Environments
WebAssembly: port of PALISADE to JavaScript
Homomorphic Encryption Demos and Advanced Examples
There are also several git repositories with applications and more advanced examples that we encourage the PALISADE users to explore:
- Encrypted Circuit Emulator: demonstrates how the PALISADE implementation of FHEW and TFHE can be used execute circuits described in various formats
- Integer Examples: demonstrates how the PALISADE implementation of BFV can be used for encrypted substring search
- Python Demos: includes a Python wrapper and examples showing how to write Python 3 applications that use PALISADE
- Serialization Examples: shows examples of PALISADE serialization for cryptography applications between cooperating processes
- Graphene-PALISADE-SGX: Integrated Homomorphic Encryption and Intel SGX with Graphene
If you want to get involved in the PALISADE project, please contact our team at contact@palisade-crypto.org.
The PALISADE community has merged the PALISADE project into the next-gen OpenFHE open-source FHE software library. OpenFHE has all of the features of PALISADE, merged with selected capabilities of HElib and HEAAN.
We invite you to check out the OpenFHE library at https://www.openfhe.org. You can also mail the OpenFHE community leaders at contact@openfhe.org.
Our community is committed to making security bug fixes in PALISADE, but primary development in PALISADE is moving to OpenFHE.
The PALISADE user manual for the current stable release is available here. The user manual, though updated each release is a constant work in progress. It tries to be accessible to the novice user, but it does assume a large amount of working knowledge in lattice cryptography, specifically with respect to the published schemes and their operators. As such the documentation for various operators and encodings is often lacking detail.
Installation instructions and further technical documentation for the stable release are available on the PALISADE git repository wiki here.
Similar documentation for the current development release (1.11.2) can be found in the development repository here.
The source for this documentation currently isn’t in the repository, so please send any suggestions for improvement to us at
- PALISADE Project contact@palisade-crypto.org
or one of us at
- PALISADE Project Leads:
- Dave Cousins dcousins@dualitytech.com, dcousins@njit.edu
- Kurt Rohloff krohloff@dualitytech.com, rohloff@njit.edu
- Yuriy Polyakov ypolyakov@dualitytech.com
Projects Using PALISADE. The following projects use the homomorphic encryption capabilities of PALISADE:
- E3 (Encrypt-Everything-Everywhere) homomorphic encryption framework developed by the MoMa Lab at NYU Abu Dhabi.
- Intel Homomorphic Encryption Library (HEXL) optimized for Intel CPU’s with AVX-512 capabilities.
Contributors and Users. Members of the following organizations are or have been contributors or users of the PALISADE library:
- Duality Technologies
- NJIT (New Jersey Institute of Technology)
- MIT (Massachusetts Institute of Technology)
- CACI / LGS Innovations (Lucent Government Systems)
- Two Six Labs
- Information Sciences Institute
- New York University (NYU)
- University of Southern California
- Carnegie Mellon University
- Notre Dame University
- Raytheon BBN Technologies
- UCSD (University of California San Diego)
- Perspecta Labs / Applied Communication Sciences (ACS) / Vencore Labs
- Sabanci University
- Galois, Inc.
- EUROCOM
- Waseda University
- Northeastern University
- Worcester Polytechnic Institute (WPI)
- National University of Singapore
- University of Toronto
- New York University (NYU)
- University of Michigan
- Old Dominion University
- Royal Holloway, University of London
- University of Texas
Sponsors. The following organizations and projects have been providing generous sponsorship for the PALISADE project:
- DARPA OPS-5G (2020-present): This material is based upon work supported by the Defense Advanced Research Projects Agency (DARPA) under Contract No. HR001120C0157. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the Defense Advanced Research Projects Agency (DARPA).
- DARPA CSL (2020-present): This material is based upon work supported by the Defense Advanced Research Projects Agency (DARPA) under Agreement No. HR00112090102.
- DARPA MARSHAL (2017-2021): Sponsored by the Defense Advanced Research Projects Agency (DARPA) and the US Navy SPAWAR Systems Center Pacific (SSCPAC) under Contract Number N66001-17-1-4043. The views expressed are those of the authors and do not necessarily reflect the official policy or position of the Department of Defense or the U.S. Government.
- IARPA HECTOR (2019-2020) : This research is based upon work supported in part by the Office of the Director of National Intelligence (ODNI), Intelligence Advanced Research Projects Activity (IARPA), via Contract No. 2019-1902070006. The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies, either expressed or implied, of ODNI, IARPA, or the U.S. Government. The U.S. Government is authorized to reproduce and distribute reprints for governmental purposes notwithstanding any copyright annotation therein.
- DARPA SAFEWARE (2015-2019) : Sponsored by the Defense Advanced Research Projects Agency (DARPA) and the Army Research Laboratory (ARL) under Contract Numbers W911NF-15-C-0226 and W911NF-15-C-0233. The views expressed are those of the authors and do not necessarily reflect the official policy or position of the Department of Defense or the U.S. Government.
- IARPA RAMPARTS (2016-2018) : This research is based upon work supported in part by the Office of the Director of National Intelligence (ODNI), Intelligence Advanced Research Projects Activity (IARPA). The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies, either express or implied, of ODNI, IARPA, or the U.S. Government. The U.S. Government is authorized to reproduce and distribute reprints for governmental purposes notwithstanding any copyright annotation therein.
- NIH SBIR GEARS (2017-2018): Research reported in this publication was supported by National Human Genome Research Institute of the National Institutes of Health under award number 1R43HG010123.
- NSA CAE (2015-2016) : Project sponsored by the National Security Agency under Grant H98230-15-1-0274. The United States Government is authorized to reproduce and distribute reprints notwithstanding any copyright notice herein.
- Simons Foundation (2015-2016)
- Sloan Foundation (2017-present)