Exploring Libraries for Homomorphic Encryption
MetadataShow full item record
Fully homomorphic encryption (FHE) is a very modern encryption technique which allows any number of efficient computations to be carried out on the encrypted data without having access to the secret key. FHE schemes can be used in many applications such as cloud computing, spam detection in encrypted mails, encrypted data search, delegation of computation, multi-party computation and many more where the security of the data is of utmost importance. Many libraries have been developed for the implementation of fully homomorphic encryption schemes since the breakthrough paper of Gentry on fully homomorphic encryption scheme using ideal lattices. A few of them are SEAL v2.3.0, HElib, an R package for FHE, etc. The aim of this project is to explore the libraries HElib, SEAL and libScarab and understand their usage, parameters, noise reduction techniques and security in order to provide an overview to the users who would use these libraries. HElib is more suited towards the other two considering the knowledge of the depth of the circuit. SEAL on the other hand is favorable than the other two libraries in terms of its documentation and external dependencies and also the provision of an automatic parameter selection. The third library called libScarab is a very light weight library as compared to HElib and SEAL. The underlying cryptosystems and their optimizations in these three libraries have also been studied and a brief introduction is given. An overview into the different noise reduction techniques is also included in this project. Some of the other available libraries like the R package for FHE, python-paillier and so on have also been studied briefly and installed during the course of this project.