I know some works have been done in the context of cirrcuit privacy on homomorphic encryption, where from an output ciphertext it does not allow someone to distinguish what function is computed.

I wonder the need of this functionality. If we use a cloud server to delegate some tasks over encrypted data, then the cloud can know what kinds of function is being evaluated (possibly from binary code or cpu behavior).

And, if some specific company delegates task to the cloud server. Then the server can infer what's going on and what types of data is being processed.

In this case, circuit privacy does not make sense for me.


1 Answer 1


When we say circuit privacy, we actually mean that the distribution over the result of the computation is the same (statistically close) to the distribution over an encryption of the result. This is needed because typically the party computing the circuit has its own private input and we need to protect this. However, if you are using FHE to just offload computation to a cloud in a private manner, then you not need circuit privacy. Rather, circuit privacy is needed when multiple parties with private inputs collaborate to compute an output.

  • $\begingroup$ Thanks for your nice answer! I understand that circuit privacy makes sense in a MPC scenario where parties do not want to reveal their inputs from the computation result. $\endgroup$
    – mallea
    Commented Jun 20, 2018 at 22:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.