Live data from Hacker News

Intro to Fully Homomorphic Encryption

blog.higashi.tech

11–20 of 31 posts

Re: Intro to Fully Homomorphic Encryption

#11
post #7

If Enc(2) + Enc(3) = Enc(5), and Enc(1) + Enc(4) = Enc(5). Does Enc(5) represent the same ciphertext in both cases? I'm asking because, if so, shouldn't it be trivial to uncover the plaintexts if you can perform any math op on the ciphertexts?

As KenoFischer says, they are not the same ciphertext, even if we consider a non homomorphic encryption system. Enc is basically a random algorithm, and we need it to return different ciphertexts for the same plaintext, otherwise it would be easy to break - if I know Enc(1) and the scheme is additive, then I'd know Enc(n) for all n...

Re: Intro to Fully Homomorphic Encryption

#12
post #2

The author touched on the performance problem but is anyone aware of homomorphic encryption being used in the real world today, outside of academia?

This is the webpage of TFHE, a recent and quite fast FHE scheme - https://tfhe.github.io/tfhe/ . They have a (surely incomplete) list of applications. I work in a somewhat related field, and I know that current FHE schemes can be used for things like voting and computing basic statistics when the data size is smallish.

Re: Intro to Fully Homomorphic Encryption

#13
post #2

The author touched on the performance problem but is anyone aware of homomorphic encryption being used in the real world today, outside of academia?

This is the webpage of TFHE, a recent and quite fast FHE scheme - https://tfhe.github.io/tfhe/ . They have a (surely incomplete) list of applications. I work in a somewhat related field, and I know that current FHE schemes can be used for things like voting and computing basic statistics when the data size is smallish.

Out of that entire list, all of them are either academic projects or toolchain projects. None of them are FHE in use in an actual production system.

FHE is interesting but very early.

Re: Intro to Fully Homomorphic Encryption

#14
post #7

If Enc(2) + Enc(3) = Enc(5), and Enc(1) + Enc(4) = Enc(5). Does Enc(5) represent the same ciphertext in both cases? I'm asking because, if so, shouldn't it be trivial to uncover the plaintexts if you can perform any math op on the ciphertexts?

It’s akin to Enc(5+noise)

Re: Intro to Fully Homomorphic Encryption

#15
post #6
post #2

The author touched on the performance problem but is anyone aware of homomorphic encryption being used in the real world today, outside of academia?

Because of the sheer performance challenges, and the availability of SGX as an alternative, and also the competitiveness of MPC, I think most use cases struggle to justify selecting homomorphic encryption as the best choice. To me, who is involved in related fields but not FHE directly, it seems like practical FHE is probably 15 or more years away, even for niche use cases.

What are SGX and MPC? :-)

Re: Intro to Fully Homomorphic Encryption

#16
post #6

Earlier quoted context omitted.

Because of the sheer performance challenges, and the availability of SGX as an alternative, and also the competitiveness of MPC, I think most use cases struggle to justify selecting homomorphic encryption as the best choice. To me, who is involved in related fields but not FHE directly, it seems like practical FHE is probably 15 or more years away, even for niche use cases.

What are SGX and MPC? :-)

Intel SGX - allows you to run your code on a someone’s hardware fully assured that owner can’t get nor your code not your data.

MPC - Multi-Party Computations. To protect your data and algorithms, you split data and code between multiple parties in special way that prevents them from knowing what exactly was computed.

https://en.wikipedia.org/wiki/Software_Guard_Extensions

https://en.wikipedia.org/wiki/Secure_multi-party_computation

Re: Intro to Fully Homomorphic Encryption

#17

This is only a "Gentle Intro" if you know advanced mathematical notation.

Which really speaks to the complexity of the field. It'll be another century before the ELI5 version comes along.

The business card version, as I understand it, involves splitting our plaintext as bits, encrypt each, pass these 'bits' through a logical circuit equivalent to the desired computation (ex a full adder [0]), decrypt the 'bits', and reassemble them into the transformed plaintext. The advanced math comes in encrypting it by choosing values that they follow a lattice [1] .. maybe .. so that evaluating the circuit doesn't trash the encrypted bits.

[0] https://en.wikipedia.org/wiki/Adder_(electronics)#Full_adder

[1] https://en.wikipedia.org/wiki/Lattice_(group)

Re: Intro to Fully Homomorphic Encryption

#20
post #6
post #2

The author touched on the performance problem but is anyone aware of homomorphic encryption being used in the real world today, outside of academia?

Because of the sheer performance challenges, and the availability of SGX as an alternative, and also the competitiveness of MPC, I think most use cases struggle to justify selecting homomorphic encryption as the best choice. To me, who is involved in related fields but not FHE directly, it seems like practical FHE is probably 15 or more years away, even for niche use cases.

Way longer than 15 years
Post reply on HN