SEAL
HElib
SEAL | HElib | |
---|---|---|
6 | 3 | |
3,394 | 3,092 | |
0.9% | 0.4% | |
0.0 | 3.5 | |
7 months ago | 10 months ago | |
C++ | C++ | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
SEAL
- On Intel SGX, is it possible to set an executable running such that you, the operator, cannot decrypt its state?
-
Haveibeenpwnd
the protocol implementation built on the opensource SEAL library
-
Fully Homomorphic Encryption by Google
FHE has been around for a while now, IBM: https://github.com/homenc/HElib and Microsoft: https://www.microsoft.com/en-us/research/project/microsoft-seal/ both have their own (much more mature) FHE implementations.
-
Fully Homomorphic Encryption (FHE)
It's really great to see more big companies getting into this game, ease of adoption is really the key here.
When it comes to FHE, there are 3 underlying paradigms you can target with compilers:
1. boolean circuits, where you represent your program as encrypted boolean gates. The advantage is that it's as generic as it gets, the drawback is that it's very slow. TFHE is great for that, and it's what is shown here.
2. arithmetic circuits, where you represent your program as a combination of encrypted additions and multiplications. This goes really fast, but you are quickly limited in terms of usecases because you can only do a certain number of arithmetic operations. CKKS/SEAL targets that: https://www.microsoft.com/en-us/research/project/microsoft-s...
3. functional circuits, where you represent your program as a combination of homomorphic functions. Advantage is that you can do very complex things like deep neural network, the drawback being that you have limitations of the bits of precision for the computations. Concrete targets that: https://zama.ai/concrete/
- Microsoft Seal: Fast and Easy-to-Use Homomorphic Encryption Library
-
Would you pay for querying a postgresql database in such a way the server never learned what row you queried for?
Case 2: the encrypted case. You would be encrypting the data itself, so each cell in your database would be encrypted, the filesystem, the tables, the database, and every other aspect of postgresql is left exactly the same. As a matter of fact, you would install this the same way you would install every other postgresql extension. Just run "make install". The only dependency is Microsoft SEAL(https://github.com/microsoft/SEAL) which is open source and you download it and install it from source as well. That is it.
HElib
-
The Rise of Fully Homomorphic Encryption
For clarity, let's assume the hospital stores its records in plaintext. For the pharma company, the hospital encrypts the patient records with a secret key. Now they let the pharma company run their homomorphic algorithm and send the values back. Only problem is the pharma company can not read those results without having access to the key. FHE is completely redundant in this use case - the hospital could have simply run the pharma company's SQL and audited the code and outputs.
What is FHE actually good for then? Let's imagine you are a top secret agent and you get instructions to fly to Bulgaria as a part of your mission. You have other hostile agents constantly monitoring you, trying to understand your next move. But there's a problem - to buy a plane ticket to Bulgaria you need to know the name of it's capital city. You can't just type it to Google, because these other agents have infiltrated the Google servers and see what you search (assume once you actually know the name of the capital, you somehow buy the actual ticket without "them" knowing..)
Lukcily though, CloudCorp offers a public homomorphic query service for all world capitals. This service allows you to send a query for the capital of any country over an intercepted connection, and get back the result. Even if the hostile agents had infiltrated CloudCorp and were monitoring all your comms, they would not be able know which country's capital you just queried.
How such service would be implemented is explained in good detail in this tutorial: https://github.com/homenc/HElib/tree/master/examples/BGV_cou...
P.S. The capital of Bulgaria is Sofia.
-
C++ members chaining
While I was searching for homomorphic encryption tools/libs, I stumbled upon this.
-
Fully Homomorphic Encryption by Google
FHE has been around for a while now, IBM: https://github.com/homenc/HElib and Microsoft: https://www.microsoft.com/en-us/research/project/microsoft-seal/ both have their own (much more mature) FHE implementations.
What are some alternatives?
fully-homomorphic-encryption - An FHE compiler for C++
Seal - 🦭 Video/Audio Downloader for Android, based on yt-dlp, designed with Material You
EVA - Compiler for the SEAL homomorphic encryption library
brainfreeze - Fully Homomorphic Brainfuck
securefs - Filesystem in userspace (FUSE) with transparent authenticated encryption
MuchPIR - Homomorphic Encryption PIR Postgres C/C++ Agregate Extension.
react-native-quick-crypto - ⚡️ A fast implementation of Node's `crypto` module written in C/C++ JSI
Free-the-World-Algorithm - an algorithm to conduct anonymous votes/ polls/ elections/ opinion studies with billions of authenticated voters securely and verifiable
Crypto++ - free C++ class library of cryptographic schemes
moebiustoolkit
cryfs - Cryptographic filesystem for the cloud