Skip to content
forked from homenc/HElib

An Implementation of homomorphic encryption

Notifications You must be signed in to change notification settings

evripidispar/HElib

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

HElib

HElib is a software library that implements [homomorphic encryption] 6 (HE). Currently available is an implementation of the [Brakerski-Gentry-Vaikuntanathan] 1 (BGV) scheme, along with many optimizations to make homomorphic evaluation runs faster, focusing mostly on effective use of the [Smart-Vercauteren] 2 ciphertext packing techniques and the [Gentry-Halevi-Smart] 3 optimizations.

At its present state, this library is mostly meant for researchers working on HE and its uses. Also currently it is fairly low-level, and is best thought of as "assembly language for HE". That is, it provides low-level routines (set, add, multiply, shift, etc.), with as much access to optimizations as we can give. Hopefully in time we will be able to provide higher-level routines.

We still do not have an implementation of bootstrapping, hence so far we can only support "leveled" HE, where the parameters must be set large enough to evaluate the desired functionality.

This library is written in C++ and uses the [NTL mathematical library] 4 (version 6.1.0 or higher). It is distributed under the terms of the [GNU General Public License] 5 (GPL).

About

An Implementation of homomorphic encryption

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 82.2%
  • TeX 16.8%
  • C 1.0%