Drexel University

College of Computing and Informatics

Fully Homomorphic Encryption Implementation

Research
Implement a fully homomorphic encryption scheme capable of running any function in an encrypted setting.
Encryption schemes are widely used for purposes such as data privacy, data integrity, security, and verifying identity. Recent advances in cryptography have allowed for fully homomorphic encryption schemes, which unlike prior schemes can support computation of any function on encrypted data. These schemes have a real-world use case, namely in cloud computing: homomorphic encryption schemes allow for third-party servers to perform intensive computations without needing to expose the underlying data. Such schemes would be invaluable to businesses (such as those in healthcare and government) that would like to leverage cloud computing processing power while protecting data privacy.

In this project we implement in Python an integer-based fully homomorphic encryption scheme where functions are run as virtual binary circuits. We illustrate through our implementation the details of homomorphic encryption and how these schemes work. Furthermore, we provide support for the concept of "bootstrapping", where, by emulating the decryption algorithm inside an encrypted circuit, we are able to maintain error bounds and fully support any function. Finally, we programmatically verify correctness of our implementation and demonstrate how we may leverage bootstrapping in performing large computations.
...
...

Team Members

...

Behind The Scenes

...