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 want to know if it’s possible to use a SMPC (Secure Multi-Party Computation) to have $N$ entities compute the outcome of a known mathematical operation with two or more secret inputs, where each secret input is only known by one entity in the $N$-sized group.

I’m asking, because I want to define a protocol where two network nodes take part in a virtual money transfer – with $k$ witness nodes – where the balance of each node taking part in the transaction is kept secret to itself. After the transaction is calculated, each part can verify with the outputs whether the operation was successful or not.

share|improve this question

Yes, that is possible -- that's exactly the problem that secure multiparty computation solves. You should start by reading standard references on secure multiparty computation.

You might enjoy the following paper, and follow-on work:

Secure Multiparty Computations on Bitcoin, Marcin Andrychowicz and Stefan Dziembowski and Daniel Malinowski and Łukasz Mazurek, IEEE Security & Privacy 2014.

share|improve this answer

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.