Re:Spiral’s Homomorphic Encryption – Is This the Future of P...
by noam_k on Monday November 21, 2022 @12:35PM
(#33695356)
When using Homomorphic Encryption you need to compile your application to a circuit. This means that for branches you need to evaluate both sides and multiply by a bit (like a multiplexor). This way you preserve privacy at the price of heavy computation on the server side.
[ Parent
| on HN ]
Re:Spiral’s Homomorphic Encryption – Is This the Future of P...
by j2kun on Monday November 21, 2022 @12:56PM
(#33695629)
+1, and some compilers already exist to do that for you. See, e.g., Google's compiler (which I work on). https://github.com/google/fully-homomorphic-encryption
Re:Spiral’s Homomorphic Encryption – Is This the Future of P...
by a1369209993 on Monday November 21, 2022 @03:30PM
(#33697513)
> This means that for branches you need to evaluate both sides
Not true in general, since you can reuse the multiplexor multiple times during the evaluation, to produce essentially a circuit-wise least-common-multiple of the two sides of the branch. Eg, if one side performs two multiplications, and the other a multiplication and a division, you only need to evaluate a division and two multiplications, not a division and three multiplications. So "evaluate both sides" is a worst-case upper bound on the amount of computation.
Loops are still a pain in the ass, though.