A curated list of amazing Homomorphic Encryption libraries, software and resources.
Libraries that can be used to implement applications using (Fully) Homomorphic Encryption.
- concrete - Rust FHE library that implements Zama's variant of TFHE.
- cuHE - GPU-accelerated HE library for NVIDIA CUDA-Enabled GPUs.
- cuFHE - CUDA-accelerated Fully Homomorphic Encryption Library.
- cuYASHE - Based on leveled fully HE scheme YASHE for GPGPUs.
- FHEW - A Fully HE library based on FHEW: Bootstrapping Homomorphic Encryption in less than a second.
- FV-NFLlib - A header-only library implementing the Fan-Vercauteren scheme.
- HEAAN - Scheme with native support for fixed point approximate arithmetic.
- HElib - BGV scheme with bootstrapping and the Approximate Number CKKS scheme.
- krypto - C++ implementation of multivariate quadratic FHE.
- Λ ○ λ - "Lol" Haskell library for ring-based lattice cryptography that supports FHE.
- lattigo - Go library for lattice-based crypto that implements various schemes.
- libScarab - C library implementing a FHE scheme using large integers.
- libshe - Symmetric somewhat HE library based on DGHV scheme.
- Microsoft SEAL - C++ FHE library implementing BFV and CKKS schemes.
- NFLlib - NTT-based Fast Lattice library specialized on power-of-two polynomials.
- node-seal - JavaScript/WebAssembly port of Microsoft SEAL.
- NuFHE - GPU-accelerated HE library, faster than cuFHE, that implements the tfhe algorithms.
- PALISADE - lattice encryption library.
- petlib - Python library that implements a number of Privacy Enhancing Technologies.
- Pyfhel - A Python wrapper for SEAL, HElib, and PALISADE.
- python-paillier - Partially HE based on Paillier scheme.
- SEAL-python - Python binding for the Microsoft SEAL library.
- SparkFHE - Apache Spark with an add-on for FHE computations. See 📄.
- tfhe - Faster fully HE: Bootstrapping in less than 0.1 seconds.
- TenSEAL - Library for HE operations on tensors, built on Microsoft SEAL, with a Python API.
- IBM FHE toolkit - Including FHE ML inference with a Neural Network and a Privacy-Preserving key-value search.
- fhe-toolkit-android - IBM FHE toolkit for Android
- fhe-toolkit-ios - IBM FHE toolkit for iOS
- fhe-toolkit-linux - IBM FHE toolkit for Linux (Docker based Centos, Fedora, Ubuntu & Alpine editions)
- fhe-toolkit-macos - IBM FHE toolkit for macOS
- AWS HE toolkit - Simplifies the process of designing circuits for the CKKS scheme.
- ALCHEMY - Haskell-based DSLs and interpreters/compilers, build on top of the lattice crypto library Lol.
- Cingulata - Compiler toolchain and RTE for running C++ programs over encrypted data.
- crypto-geofence - Geo-fencing demo application based on Paillier scheme.
- lattigo-polls - Web-application for scheduling meetings using lattigo.
- Marble - A C++ framework that translates between nearly plaintext-style user programs and FHE computations.
- Morfix.io - Web-based UI to play around with the Microsoft SEAL library.
- nGraph-HE - Deep Learning (DL) with HE through Intel’s DL graph compiler nGraph based on SEAL.
- OpenMined - Decentralized data ownership & intelligence based on HE, blockchain and deep / federated learning.
- SHEEP - HE evaluation platform with a set of native benchmarks and a library agnostic language.
- CryptDB - Protecting confidentiality with encrypted query processing.
- encrypted-mongodb - Wrapper on MongoDB's Python driver that enables to query encrypted data.
- Prisma/DB - Security layer for relational database systems.
- TimeCrypt - Encrypted time-series database using homomorphic encryption-based access control.
- ZeroDB - E2E encrypted database using proxy re-encryption.
- Barak, Boaz. Chapter about FHE in Barak's introductory book to Cryptography, used for Harvard CS 127.
- Barthelemy, Lucas. Brief survey of Fully HE. 2016.
- Chen, Zhigang. A continuously updated list of FHE papers.
- Gentry, Craig. A fully homomorphic encryption scheme. Stanford University, 2009.
- HomomorphicEncryption.org. An open industry, government & academic consortium working on standardization of FHE.
- KU Leuven. An introduction to homomorphic encryption.
- Micciancio, Daniele. Links to papers and implementations of Lattice Cryptography schemes.
- Microsoft Research. Videos from SEAL/CKKS talks at Microsoft's Private AI Bootcamp.
- Vaikuntanathan, Vinoid. A list of references about FHE, covering top papers in the field.
- awesome-cryptography
- awesome-crypto-papers
- awesome-mpc - Multi-Party Computation.
Contributions welcome! Read the contribution guidelines first.
To the extent possible under law, Jonathan Schneider has waived all copyright and related or neighboring rights to this work.