  Suppose Alice wants to perform some computation that could be done quickly on
a quantum computer, but she cannot do universal quantum computation. Bob can do
universal quantum computation and claims he is willing to help, but Alice wants
to be sure that Bob cannot learn her input, the result of her calculation, or
perhaps even the function she is trying to compute. We describe a simple,
efficient protocol by which Bob can help Alice perform the computation, but
there is no way for him to learn anything about it. We also discuss techniques
for Alice to detect whether Bob is honestly helping her or if he is introducing
errors.
