-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
Whilst demonstrating incredible bleeding edge technology, the Hangman example is hardcoded.
https://github.com/google/fully-homomorphic-encryption/blob/...
It's such a convenient parody of a classic programming exercise that it must be intentional. I can't help laughing at how that one file is saying two things at once:
"Uh, it's one-word Hangman. Dead simple. Nothing up our sleeves. I have Real Stuff to do, give me a break."
"Our product is working great, but there's some minor fixes to do. Let's hold a meeting on how to really get this multi-word support cracked. Maybe add 'privacy-aware' and 'digitalization'?"
Surprisingly, it's also making it very easy to understand what is actually relevant in the project.
oh yes. brainfreeze [0] is an example of an FHE Brainfuck machine. the problem is that your users can't decrypt any outputs at all from them. there's also a major possibility of confused deputy attacks if you blindly decrypt outputs returned to you by your users, since the users can "circuit-bend" your FHE program to a degree. for instance, nothing's stopping me from sending the output from brainfreeze back to you early - I can't even tell when it's halted!
0. https://github.com/joeltg/brainfreeze
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/
Related posts
-
Ask HN: Should we follow what impresses us?
-
We’re Christian Mouchet, Jean-Philippe Bossuat, Kurt Rohloff, Nigel Smart, Pascal Paillier, Rand Hindi, Wonkyung Jung, various researchers and library developers of homomorphic encryption to answer questions about homomorphic encryption and why it’s important for the future of data privacy! AMA
-
Fully Homomorphic Encryption by Google
-
On Intel SGX, is it possible to set an executable running such that you, the operator, cannot decrypt its state?
-
Ask HN: Best practices for safeguarding master password in organization?