Cryptography Stack Exchange is a question and answer site for software developers, mathematicians and others interested in cryptography. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am a beginner to the concept of homomorphic encryption. One thing that makes me very confused is why we use the circuit concept or approach to homomorphic encryption. Gentry's paper does not discuss it in detail. Are there any papers or books could make me have a better understanding of it?
(I mean the circuits part.)

share|improve this question
This question has been marked 'off-topic'. I don't agree with that, but it might need clarification or risks being labelled too broad (I have not done this, I think its just about specific enough) – figlesquidge Mar 17 '14 at 12:11
Might be a bit too broad (or even lit-request) but seems on-topic to me. – rath Mar 17 '14 at 18:54

We use circuits because they are universal (any function you want to compute can be expressed as a circuit) and because they are convenient (because we know how to solve the problem of fully homomorphic encryption for circuits but not for other models). In particular, circuits are in some sense simple: all you need to do is find a way to implement an AND gate and a NOT gate, and that's enough to be universal. This helps avoid inessential detail and helps us focus on the core of the problem.

share|improve this answer
Thank you very much.I come up with an idea about simulating the fully homomorphic encryption scheme by using the C or Java. First, I will use the socket to communicate with client and server. Before the data is sent to server, all the data has been encrypted and put into fully homomorphic encryption.Second, once the server receive the encrypted data, the server use the Eval Function and then send back the data to client .What do you think of it? Do I need to simulate each circuit gate ,like the function or just simply use bit operation to represent circuit – user12551 Mar 18 '14 at 3:26

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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