How Does MPC Work?
xluffy opened this issue · comments
Sue takes her salary of $120,000 and adds a random and relatively large number to it, say $875,500. This gives a total of $995,500.
Sue shares this newly computed number with Pam. This number is meaningless to Pam, as she doesn’t know what positive or negative random value Sue used to arrive at it.
Pam then adds her salary of $105,000 to the $995,500 to compute a total of $1,100,500.
Pam shares that total with Bob, who again, has no concept of what values Sue or Pam have used to gain this figure.
Bob then adds his salary of $96,300 to this amount and shares the final total of $1,196,800 with Sue.
Sue can then subtract her secret and randomly generated number of $875,500.
This gives a net value of $321,300.
This can be divided into three to calculate the average of the three salaries, which is $107,100.
None of the three “parties” in this scenario learn anything about the other’s individual salary. The only thing they learn is the average and can compare their own salary against it.
Not only did they not have to share their private data with each other, they also didn’t have to share it with anyone else.
Using distributed multi-party computation with no third parties or intermediaries involved, means total security and privacy are guaranteed.
This same concept of secret sharing and distributed computation can be implemented in blockchain technology to protect secrets such as a private key to a crypto wallet.
Before we look at how MPC wallets work, we need to understand what a crypto wallet is and why the private key is so important.