Live data from Hacker News

Practical homomorphic encryption over integers (2017)

arxiv.org

41–50 of 57 posts

Re: Practical homomorphic encryption over integers (2017)

#41
post #4
post #2

This is one of the current 'tech' trends that I'm following, the idea of homomorphic encryption is really cool. I feel like there is a lot of real world applications for it, but I have failed to find them yet.

I really want to sarcastically say "blockchain homomorphic encryption", but, well, it's not necessarily a terrible idea, honestly. One can imagine some combination of the primitives in which you could prove that you added here the same amount you subtracted from there, that neither total is below zero, but for which the number actually transferred is encrypted. The current use case for something like BitCoin is often…

> One can imagine some combination of the primitives in which you could prove that you added here the same amount you subtracted from there, that neither total is below zero, but for which the number actually transferred is encrypted

You are exactly describing Mimblewimble.

https://github.com/ignopeverell/grin/blob/master/doc/intro.m...

Re: Practical homomorphic encryption over integers (2017)

#42
post #10
post #2

This is one of the current 'tech' trends that I'm following, the idea of homomorphic encryption is really cool. I feel like there is a lot of real world applications for it, but I have failed to find them yet.

Cloud computing is the big one. You might want to rent some remote computer time without sending plaintext data to a third party. Homomorphic encryption lets you upload encrypted data and instructions for a third party to operate on it without having to decrypt it first. Edit: Try Greg Egan's book Permutation City .

Enclaves (e.g. SGX) get you there without the need for fancy math. And you get to maintain normal computation (i.e. x86).

Enclaves have the downside of being a bit of a pain to use. But hell, FHE isn’t any easier.

Re: Practical homomorphic encryption over integers (2017)

#43
post #42
post #10

Earlier quoted context omitted.

Cloud computing is the big one. You might want to rent some remote computer time without sending plaintext data to a third party. Homomorphic encryption lets you upload encrypted data and instructions for a third party to operate on it without having to decrypt it first. Edit: Try Greg Egan's book Permutation City .

Enclaves (e.g. SGX) get you there without the need for fancy math. And you get to maintain normal computation (i.e. x86). Enclaves have the downside of being a bit of a pain to use. But hell, FHE isn’t any easier.

With SGX you don't have to trust the cloud provider, but you still have to trust Intel. Of course, you're probably trusting Intel anyway, so this is perhaps just a theoretical concern.

Re: Practical homomorphic encryption over integers (2017)

#44
post #10
post #2

This is one of the current 'tech' trends that I'm following, the idea of homomorphic encryption is really cool. I feel like there is a lot of real world applications for it, but I have failed to find them yet.

Cloud computing is the big one. You might want to rent some remote computer time without sending plaintext data to a third party. Homomorphic encryption lets you upload encrypted data and instructions for a third party to operate on it without having to decrypt it first. Edit: Try Greg Egan's book Permutation City .

But if you test 5 + 3 = 8 with the current key, wouldn't you then be able to detect a similar pattern in the data you are processing ?

Re: Practical homomorphic encryption over integers (2017)

#45
post #42
post #10

Earlier quoted context omitted.

Cloud computing is the big one. You might want to rent some remote computer time without sending plaintext data to a third party. Homomorphic encryption lets you upload encrypted data and instructions for a third party to operate on it without having to decrypt it first. Edit: Try Greg Egan's book Permutation City .

Enclaves (e.g. SGX) get you there without the need for fancy math. And you get to maintain normal computation (i.e. x86). Enclaves have the downside of being a bit of a pain to use. But hell, FHE isn’t any easier.

It is somewhat doubtful, though, that SGX achieves what it was supposed to achieve. While you get full-RAM encryption & integrity, the trouble is that CPUs tend to only work-as-defined for a narrow range of environmental parameters. In all likelihood, a malicious cloud provider can take a CPU out of spec, at which point pretty much all security guarantees go out of the window...

Re: Practical homomorphic encryption over integers (2017)

#46
post #43
post #42

Earlier quoted context omitted.

Enclaves (e.g. SGX) get you there without the need for fancy math. And you get to maintain normal computation (i.e. x86). Enclaves have the downside of being a bit of a pain to use. But hell, FHE isn’t any easier.

With SGX you don't have to trust the cloud provider, but you still have to trust Intel. Of course, you're probably trusting Intel anyway, so this is perhaps just a theoretical concern.

With homomorphic encryption, you have to trust Intel to build CPUs that calculate correctly. Except for FDIV style bugs (which are pretty rare, and it's telling that FDIV, from the mid-90s is the go-to example), they mostly managed to maintain that trust.

With SGX you have to trust Intel to build CPUs that isolate securely. Meltdown, Spectre (multiple variants), bugs in Intel TXT and ME, and that's only some of the headline issues from the last 4 years.

Re: Practical homomorphic encryption over integers (2017)

#47
post #10

Earlier quoted context omitted.

Cloud computing is the big one. You might want to rent some remote computer time without sending plaintext data to a third party. Homomorphic encryption lets you upload encrypted data and instructions for a third party to operate on it without having to decrypt it first. Edit: Try Greg Egan's book Permutation City .

But if you test 5 + 3 = 8 with the current key, wouldn't you then be able to detect a similar pattern in the data you are processing ?

I don't think the data processor would have the key. They'd receive the encrypted inputs and the operation, and return the result.

Re: Practical homomorphic encryption over integers (2017)

#48
post #4

Earlier quoted context omitted.

I really want to sarcastically say "blockchain homomorphic encryption", but, well, it's not necessarily a terrible idea, honestly. One can imagine some combination of the primitives in which you could prove that you added here the same amount you subtracted from there, that neither total is below zero, but for which the number actually transferred is encrypted. The current use case for something like BitCoin is often…

Hey, we're working on blockchain "somewhat homomorphic encryption" (SHE) via multiparty computation. In particular, a privacy layer for Ethereum.

I implemented this, on top of Fabric however, and with a semi-trusted controller node, for a rather large industry. Was a lot of fun, and is being used in production. You can get quite far with SHE.

Re: Practical homomorphic encryption over integers (2017)

#49

Earlier quoted context omitted.

But if you test 5 + 3 = 8 with the current key, wouldn't you then be able to detect a similar pattern in the data you are processing ?

I don't think the data processor would have the key. They'd receive the encrypted inputs and the operation, and return the result.

I have zero knowledge in the field so all my questions are quite naive.

But the encryption process is public right ? So you can encrypt just like any client ?

Re: Practical homomorphic encryption over integers (2017)

#50
post #46
post #43

Earlier quoted context omitted.

With SGX you don't have to trust the cloud provider, but you still have to trust Intel. Of course, you're probably trusting Intel anyway, so this is perhaps just a theoretical concern.

With homomorphic encryption, you have to trust Intel to build CPUs that calculate correctly. Except for FDIV style bugs (which are pretty rare, and it's telling that FDIV, from the mid-90s is the go-to example), they mostly managed to maintain that trust. With SGX you have to trust Intel to build CPUs that isolate securely. Meltdown, Spectre (multiple variants), bugs in Intel TXT and ME, and that's only some of the h…

...and if there are bugs, with SGX they could expose your secrets. With homomorphic encryption they should just turn your results into detectable garbage on your end, I'd expect.
Post reply on HN