ENCRYPT Code Repository
Code Repository
In this page, we make available samples of ENCRYPT Code, stemming from some of our activities.
We provide access to code and its accompanying documentation.
Differential Privacy Code
We provide access to some code, relevant to the Differential Privacy activities that were carried out during the ENCRYPT.
This includes:
- Differential Privacy Model Training
This code demonstrates the training of machine learning models with and without differential privacy (DP) using different classifiers on a dataset. - Data Noise Addition
This code adds noise to specified columns in CSV files located in an input directory. It supports two types of noise distributions: Laplace and Gaussian.
OpenFHE - Open-Source Fully Homomorphic Encryption Library
Fully Homomorphic Encryption (FHE) is a powerful cryptographic primitive that enables performing computations over encrypted data without having access to the secret key. OpenFHE is an open-source FHE library that includes efficient implementations of all common FHE schemes:
- Brakerski/Fan-Vercauteren (BFV) scheme for integer arithmetic
- Brakerski-Gentry-Vaikuntanathan (BGV) scheme for integer arithmetic
- Cheon-Kim-Kim-Song (CKKS) scheme for real-number arithmetic (includes approximate bootstrapping)
- Ducas-Micciancio (DM/FHEW), Chillotti-Gama-Georgieva-Izabachene (CGGI/TFHE), and Lee-Micciancio-Kim-Choi-Deryabin-Eom-Yoo (LMKCDEY) schemes for evaluating Boolean circuits and arbitrary functions over larger plaintext spaces using lookup tables
OpenFHE also includes the following multiparty extensions of FHE:
- Threshold FHE for BGV, BFV, and CKKS schemes
- Interactive bootstrapping for Threshold CKKS
- Proxy Re-Encryption for BGV, BFV, and CKKS schemes
OpenFHE also supports switching between CKKS and FHEW/TFHE to evaluate non-smooth functions, e.g., comparison, using FHEW/TFHE functional bootstrapping.