Several open-source implementations of homomorphic encryption schemes exist today. Below is an incomplete list. Some of the libraries support schemes which are not yet standardized. To request that your implementation be added, please contact us at contact@HomomorphicEncryption.org.
- HELib: This is an early and widely used library from IBM that supports the BGV and CKKS scheme and bootstrapping.
- PALISADE: This is a general library affiliated with NumFocus that supports several lattice encryption schemes, including multiple homomorphic encryption schemes such as BGV, BFV, CKKS, TFHE and FHEW, among others, with multiparty support.
- SEAL: This is a widely used library from Microsoft that supports the BFV and CKKS schemes.
- LattiGo: This library supports the CKKS scheme in Go.
- Concrete: This library supports a variant of the TFHE scheme.