Earlier quoted context omitted.
I'm surprised the "capitalizing a 32 character string" example is actually one second faster than adding two 32bit integers. Still super slow, but I'm curious why. I'd assume that if the string_cap.cc example takes 256 wires, wouldn't add.cc take 64 wires?
Short answer: string cap has more parallelism in the circuit. Depth is more important than total number of gates, and optimizers can decrease depth pretty well.
Google’s fully homomorphic encryption compiler – a primer
61–70 of 168 posts
Re: Google’s fully homomorphic encryption compiler – a primer
#62Earlier quoted context omitted.
We've complained long enough about complexity in code being the barrier to speed. Now it's processing power once again. I'll take it if we can rely on the security.
> I'll take it if we can rely on the security. What's a use case here? Will this one day make communication more secure? If so, how?
Re: Google’s fully homomorphic encryption compiler – a primer
#63Earlier quoted context omitted.
I'm surprised the "capitalizing a 32 character string" example is actually one second faster than adding two 32bit integers. Still super slow, but I'm curious why. I'd assume that if the string_cap.cc example takes 256 wires, wouldn't add.cc take 64 wires?
Since it encrypts one bit at a time, does capitalizing even have to touch the 224 bits that don't change? > wouldn't add.cc take 64 wires? Plus another hundred intermediate wires. And it's doing more complicated operations, however much that matters.
Re: Google’s fully homomorphic encryption compiler – a primer
#64Is there proof that this is secure? (ie that no information can be found on the plaintext when only having the ciphertext?) I'm hoping something of the like of "this is secure if AES is secure"
I know of an other library for homomorphic encryption Lattigo (https://github.com/tuneinsight/lattigo) which is based on Ring Learning with Errors.
The security of RLWE is "believed" to be strong (meaning there has not been a proof of the opposite yet). It is based on the Lattice problem which is likely to be resistant even to quantum computers.
For a more formal and complete explanation, the paper "A Decade of Lattice Cryptography" was very instructive. https://eprint.iacr.org/2015/939.pdf
Re: Google’s fully homomorphic encryption compiler – a primer
#65Either the customer whose data is being handled trusts the service provider enough to let it handle unencrypted data, in which case all the data is vulnerable to interception (and the vast majority of data processing falls into this category)
Or the customer doesn't trust the data processor to see the unencrypted data, their data but still wants to delegate processing to it. This is a very thin space to operate in. It sounds much easier to simply trust a physically separate and controlled computing plant instead of FHE.
Re: Google’s fully homomorphic encryption compiler – a primer
#66Earlier quoted context omitted.
Since it encrypts one bit at a time, does capitalizing even have to touch the 224 bits that don't change? > wouldn't add.cc take 64 wires? Plus another hundred intermediate wires. And it's doing more complicated operations, however much that matters.
No idea lol! Though it says it works on all 32 bytes in parallel regardless of input size. I imagine ignoring the bits that don't change would be some sort of security vulnerability? You could probably work out some timing attack or entropy reduction otherwise? They state it should take the same duration regardless of the length of the input string or how much needs to be capitalized (all branches are executed even t…
Nah. The bits are hardcoded into the circuit to not change. That's part of the program, and the program is public information. Only bit 6 of each byte might change, and everyone knows it.
Re: Google’s fully homomorphic encryption compiler – a primer
#67The application domain for this stuff is so negligible... Who's going to pay for this huge added cost? Either the customer whose data is being handled trusts the service provider enough to let it handle unencrypted data, in which case all the data is vulnerable to interception (and the vast majority of data processing falls into this category) Or the customer doesn't trust the data processor to see the unencrypted da…
Re: Google’s fully homomorphic encryption compiler – a primer
#68The application domain for this stuff is so negligible... Who's going to pay for this huge added cost? Either the customer whose data is being handled trusts the service provider enough to let it handle unencrypted data, in which case all the data is vulnerable to interception (and the vast majority of data processing falls into this category) Or the customer doesn't trust the data processor to see the unencrypted da…
Cancer researchers will benefit greatly from patient data sets that might include very privacy centric elements such as genome sets, past medical history (of both them and relatives to help understand heredity aspects of the disease). Most people making an informed decision may be uncomfortable with this information being made widely available, at best perhaps OK with a select few groups, but not available to anyone researching this domain.
FHE would solve this, the data can be made available to anyone with compute power that wants to help, while still respecting the privacy of the patients.
Re: Google’s fully homomorphic encryption compiler – a primer
#69Someone needs to make a crypto network that runs submitted FHE programs as proof of work.
Re: Google’s fully homomorphic encryption compiler – a primer
#70The application domain for this stuff is so negligible... Who's going to pay for this huge added cost? Either the customer whose data is being handled trusts the service provider enough to let it handle unencrypted data, in which case all the data is vulnerable to interception (and the vast majority of data processing falls into this category) Or the customer doesn't trust the data processor to see the unencrypted da…