See our 2018 INSTAR Q4 Roadmap on Medium Click here

Secure Multi-Party Computation in a nutshell

Insights Network is developing sMPC protocols that allow a number of parties to jointly perform computations on private inputs, without releasing information other than which has been agreed upon.

Traditional scenario of the 'Millionaire problem':

Let's say there are 5 individuals named Jon, Vincent, Kale, Trevor and Bob. Jon, Vincent, Kale and Trevor (JVKT for short) are all millionaires and live a wealthy life. The JVKT millionaires are rather rich but don't know who's the richest of them all. However, they don't want to show each other how much they each specifically have. That's where Bob comes in. Let's say Bob is incorruptable and therefore unbribable and will always supply the correct answer and never leak data. Learn More

Solving the 'Millionaire Problem' with Secure Multi-Party Computation:

The exact same scenario as before now takes place, but instead of using Bob to compute the data we'll use a mathmatically proven and secure protocol called Secure Multi-Party Computation to compute the answer. The JVKT millionaires now each make an individual dataset composed out of their own account balance numbers. Each millionaire locks their dataset with their own 'key' encrypting the dataset. This key is derived from a sort of 'master-key', but I'll go in further detail about that later on. Learn More

Achieved

  • Factor of trust is eliminated.
  • Data is always encrypted during computation using fully homomorphic encryption, meaning it's safe the entire way through.
  • Can be used to compute a large amount of data without having to decrypt it.
  • The Protocol can be peer-reviewed meaning it's functions are fully transparant.

Underlying protocols:

  • Zero Knowledge

    Can prove to other parties that the used expressions are true without knowing the contents of the expressions.

  • Secret Sharing

    A pre-configured amount of parties have to agree (threshold) to decrypt the answer before the answer can be decrypted using their own key's that originate from the 'master-key'.

  • Oblivious Transfer

    Fragmented data is sent without the party knowing what part of the data is sent and when that part of fragmented data is sent.

Possible Use Cases

Secure Cloud Computing

Since you never have to decrypt your data during computation the cloud is no longer unsafe to compute data in!

Secure Statistics

You've seen the simple example of the Millionaire Problem, but it is possible to think on a way larger scale then before!

Secure Election-Voting

Since your data is never decrypted to compute it is possible to hold elections via the internet!

Resources