WYS*: A Verified Language Extension for Secure Multi-party Computations

11/17/2017
by   Aseem Rastogi, et al.
0

Secure multi-party computation (MPC) enables a set of mutually distrusting parties to cooperatively compute, using a cryptographic protocol, a function over their private data. This paper presents WYS*, a new domain-specific language (DSL) implementation for writing MPCs. WYS* is a Verified, Domain-Specific Integrated Language Extension (VDSILE), a new kind of embedded DSL hosted in F*, a full-featured, verification-oriented programming language. WYS* source programs are essentially F* programs written against an MPC library, meaning that programmers can use F*'s logic to verify the correctness and security properties of their programs. To reason about the distributed semantics of these programs, we formalize a deep embedding of WYS*, also in F*. We mechanize the necessary metatheory to prove that the properties verified for the WYS* source programs carry over to the distributed, multi-party semantics. Finally, we use F*'s extraction mechanism to extract an interpreter that we have proved matches this semantics, yielding a verified implementation. WYS* is the first DSL to enable formal verification of source MPC programs, and also the first MPC DSL to provide a verified implementation. With WYS* we have implemented several MPC protocols, including private set intersection, joint median, and an MPC-based card dealing application, and have verified their security and correctness.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/20/2023

Symphony: Expressive Secure Multiparty Computation with Coordination

Context: Secure Multiparty Computation (MPC) refers to a family of crypt...
research
09/03/2020

HACCLE: An Ecosystem for Building Secure Multi-Party Computations

Cryptographic techniques have the potential to enable distrusting partie...
research
06/01/2023

A Formal Model for Secure Multiparty Computation

Although Secure Multiparty Computation (SMC) has seen considerable devel...
research
04/12/2021

Machine-checked ZKP for NP-relations: Formally Verified Security Proofs and Implementations of MPC-in-the-Head

MPC-in-the-Head (MitH) is a general framework that allows constructing e...
research
06/19/2018

Computer-aided proofs for multiparty computation with active security

Secure multi-party computation (MPC) is a general cryptographic techniqu...
research
11/20/2019

Fast Actively Secure OT Extension for Short Secrets

Oblivious Transfer (OT) is one of the most fundamental cryptographic pri...
research
03/16/2023

Formally Verified Animation for RoboChart using Interaction Trees

RoboChart is a core notation in the RoboStar framework. It is a timed an...

Please sign up or login with your details

Forgot password? Click here to reset