Skip to content

Latest commit

 

History

22 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Homomorphic Encryption

Privacy Preserving Computation

What is Homomorphic Encryption

Homomorphic encryption (HE) and the “Learning with Errors” methods have been mainly developed since the 2010s.
The principle is similar to other public/secret key crypto systems: Data is encrypted with a public key and decrypted with a secret key.
The main feature of HE is that calculations can be executed on the encrypted data without disclosing any of the encrypted information, delivering encrypted results that can be decrypted with the secret key.

A very simple example

User Alice generates geo-location data on her smart phone.
The data is encrypted with HE. The encrypted data is shared with Bob who offers location based services (e.g. recommendations).
Bob encrypts the location data of his recommendation with Alice’s public key (of course automatically via the app). He can look up in his data base of now encrypted locations which services can be offered to Alice.

At no point is Alice’s location shared with Bob. (Of course in reality a few more precautions have to be set in place to prevent de-anonymising)

Code examples

Ring-learning-with-errors

Based on Fan, Junfeng, and Frederik Vercauteren. ‘Somewhat Practical Fully Homomorphic Encryption’, 2012. https://eprint.iacr.org/2012/144 .

Geo-fencing demo in C#

This demo was done by Dominik, Axel, and myself.
Homomorphic Iota

Literature

Literature.md (will be updated continuously)

About

Examples for homomorphic encryption.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages