Skip to content

Basic implementation of a Homomorphic Encryption scheme based on RLWE

Notifications You must be signed in to change notification settings

nibrunie/morpheus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

morpheus Build Status

Introduction

Morpheus aims at becoming an implementation of a Fully Homomorphic Encryption scheme based on the Ring-LWE problem. For now it implements Leveled Homomorphic Encryption with encrypt/decrypt of ciphertext plus homomorphic addition and multiplication between ciphertext.

An Homomorphic encryption scheme allows the evaluation of functions on encrypted ciphertext such that the results of those evaluations appears once the final ciphertext is decrypted. Known since 1978, it has become more of a reality since the breakthrough work of Craig Gentry Thesis in 2009.

Todo

There are (lots of) things to be done, here is a non-exhaustive list:

  • Implement squashing: transform the somewhat homomorphic encryption into a fully homomorphic encryption scheme by implementation a encrypted version of the decryption circuits
  • Implement support for larger integer fields using GMP
  • Implement proper sampling for random encryption polynomial, gaussian sampled error and secret
  • Bound wrt parameters the depth of circuit computable
  • Implement simpler homomorphic operation helper so any binary circuit can be implemented
  • Measure and optimize operations latency

References

This library is based on many theoretical and pratical works:

About

Basic implementation of a Homomorphic Encryption scheme based on RLWE

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published