IP Library Granted Patent US 11,588,640
Granted Patent B2
US 11,588,640 · App. 16/857,202 · Granted Feb 21, 2023

Method for performing a preprocessing computation during a proactive MPC process

Inventor: Samuel Ranellucci (Petah Tiqva, IL)
Assignee: Coinbase IL RD Ltd.
H04L9/3226H04L9/085H04L2209/46
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,588,640
App. No.
16/857,202
Granted
Feb 21, 2023
Kind
B2
Abstract

The subject matter discloses computer-implemented method performed during a multi-party computation (MPC) process performed between multiple parties, said method comprising, the multiple parties executing a pre-processing phase and obtain values of correlated random variables to be used in an MPC process, the parties periodically verifying the correctness of the correlated random variables by exchanging information between the multiple parties, refreshing the values of the correlated random variables in each of the multiple parties, wherein no party of the multiple parties has access to values of the correlated random variables stored in another party of the multiple parties during the verifying and refreshing processes, the multiple parties using the correlated random variables during the MPC process after verifying a correctness of the correlated random variables.

Claims (33)

1. A computer-implemented method performed during a multi-party computation (MPC) process performed between multiple parties, said method comprising:

the multiple parties executing a pre-processing phase and obtain values of correlated random variables to be used in an MPC process;

the parties periodically verifying the correctness of the correlated random variables by exchanging information between the multiple parties;

subsequent to verifying the correctness of the correlated random variables, refreshing the values of the correlated random variables in each of the multiple parties, wherein no party of the multiple parties has access to values of the correlated random variables stored in another party of the multiple parties during the verifying and refreshing processes, and wherein the refreshing of the correlated random variables is performed locally in each of the multiple parties based on a random seed known to each of the multiple parties; and

the multiple parties using the correlated random variables during the MPC process after verifying a correctness of the correlated random variables.

2. The method of claim 1 , further comprising:

a first party of the multiple parties computing two output values by executing a function, a first output value is an output of the function receiving as input the random vector and a first of the correlated random variables received at the first party and a second output value is an output of the function receiving as input the random vector and a second of the random correlated variables generated during the preprocessing phase;

the first party sending the first output value to the second party and storing the second output value in the first party; and

the second party performing a proof-validation function having as input the first output value received from the first party and the two values of the random correlated variables generated during the preprocessing phase.

3. The method of claim 2 , further comprising verifying that an output of the proof-validation function equals the first output value.

4. The method of claim 3 , further comprising performing a commitment process between the first party and the second party on the output of the proof-validation function equals the first output value.

5. The method of claim 3 , further comprising computing output of the proof-validation function equals the first output value multiple times and verifying that the output of the proof-validation function equals the first output value in each of the multiple times.

6. The method of claim 5 , further comprising concatenating the multiple outputs of the proof-validation function and the second output value.

7. The method of claim 6 , further comprising performing a commitment process between the first party and the second party on the concatenation of the multiple outputs of the proof-validation function and the second output value.

8. The method of claim 1 , wherein the refreshing of the correlated random variables comprises the multiple parties agreeing on a random seed and each party of the multiple parties locally computing new values for the correlated random variables based on the random seed and prior values of the correlated random variables.

9. The method of claim 1 , further comprising the multiple parties performing an MPC process using the new values for the correlated random variables.

10. The method of claim 1 , wherein each party of the multiple parties receives at least two values of correlated random variables.

11. The method of claim 10 , wherein one of the values of the correlated random variables sent to the first party is an outcome of a function receiving as input two values of correlated random variables sent to the second party.

12. The method of claim 11 , wherein the function comprises multiplying one value stored in each party of the multiple parties and a XOR between the result of the multiplying and another value stored in the second party.

13. A computer-implemented method for executing a pre-processing phase prior to a multi-party computation (MPC) process, the method comprising:

receiving, by multiple parties, values of correlated random variables to be used in an MPC process;

periodically verifying, by the multiple parties, the correctness of the correlated random variables by exchanging information between the multiple parties;

subsequent to verifying the correctness of the correlated random variables, refreshing, by the multiple parties, the values of the correlated random variables in each of the multiple parties, wherein no party of the multiple parties has access to values of the correlated random variables stored in another party of the multiple parties during the verifying and refreshing processes, and wherein the refreshing of the correlated random variables is performed locally in each of the multiple parties based on a random seed known to each of the multiple parties; and

performing the MPC process using the correlated random variables after verifying a correctness of the correlated random variables.

14. The method of claim 13 , further comprising:

computing, by a first party of the multiple parties, two output values by executing a function, a first output value is an output of the function receiving as input the random vector and a first of the correlated random variables received at the first party and a second output value is an output of the function receiving as input the random vector and a second of the random correlated variables generated during the preprocessing phase;

sending, by the first party, the first output value to the second party and storing the second output value in the first party; and

performing, by the second party, a proof-validation function having as input the first output value received from the first party and the two values of the random correlated variables generated during the preprocessing phase.

15. The method of claim 14 , further comprising verifying that an output of the proof-validation function equals the first output value.

16. The method of claim 15 , further comprising performing a commitment process between the first party and the second party on the output of the proof-validation function equals the first output value.

17. The method of claim 15 , further comprising computing output of the proof-validation function equals the first output value multiple times and verifying that the output of the proof-validation function equals the first output value in each of the multiple times.

18. The method of claim 17 , further comprising concatenating the multiple outputs of the proof-validation function and the second output value.

19. The method of claim 17 , further comprising performing a commitment process between the first party and the second party on the concatenation of the multiple outputs of the proof-validation function and the second output value.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2022
From: RANELLUCCI, SAMUEL
To: COINBASE IL RD LTD.
Reel/Frame 059594/0961 →
CHANGE OF NAME Recorded Mar 3, 2022
From: UNBOUND TECH LTD.
To: UNBOUND SECURITY LTD.
Reel/Frame 059317/0482 →
Continuity (1)
Related Publication 20210336790A1 · Oct 28, 2021