Processor and compiler for secure multiparty computation
AssigneeRegents of the University of Minnesota
InventorsJohn Mario Sartori, Shashank Ganapathi Hegde
Life of this patent
Estimating the term…
Abstract
A system for Multi-Party Computation (MPC) includes a general-purpose programming language, an MPC processor, an MPC Instruction Set Architecture (ISA), and a compiler. The general-purpose programming language is used for writing an MPC application. The MPC processor executes the MPC application. The MPC ISA corresponds to the MPC processor. The compiler generates an intermediate representation for the MPC application and generates machine code for the intermediate representation by mapping and assembling MPC ISA instructions.
Claims16
A system for Multi-Party Computation (MPC), the system comprising:
- a general-purpose programming language for writing an MPC application;
- an MPC processor for executing the MPC application;
- an MPC Instruction Set Architecture (ISA) corresponding to the MPC processor;
- and
- a compiler to generate an intermediate representation for the MPC application and to generate machine code for the intermediate representation by mapping and assembling MPC ISA instructions,
- wherein the MPC processor enforces synchronization between parties involved in a computation for every bit in non-free gates.
A method comprising:
- receiving a Multi-Party Computation (MPC) program written using a general-purpose programming language;
- compiling the MPC program to generate an MPC intermediate representation;
- assembling the MPC intermediate representation to generate optimized MPC machine code;
- and
- executing the MPC machine code on an MPC processor to perform secure MPC,
- wherein the MPC processor enforces synchronization between parties involved in a computation for every bit in non-free gates.
Dependencies are inferred from the claim text.