Wys*: A DSL for Verified Secure Multi-party Computations

  title={Wys*: A DSL for Verified Secure Multi-party Computations},
  author={Aseem Rastogi and Nikhil Swamy and Michael W. Hicks},
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 \(\textsc {Wys}^\star \), a new domain-specific language (DSL) for writing mixed-mode MPCs. \(\textsc {Wys}^\star \) is an embedded DSL hosted in F\(^\star \), a verification-oriented, effectful programming language. \(\textsc {Wys}^\star \) source programs are essentially F\(^\star \) programs… 
Card-Based Cryptography Meets Formal Verification
This paper employs the technique of software bounded model checking (SBMC), which reduces the problem to a bounded state space, which is automatically searched exhaustively using a SAT solver as a backend and provides a general translation of proofs for lower bounds to a bound model checking framework for automatically finding card- and run-minimal protocols.
Oblivious algebraic data types
Secure computation allows multiple parties to compute joint functions over private data without leaking any sensitive data, typically using powerful cryptographic techniques. Writing secure
Card-based Cryptography Meets Formal Verification
This paper employs the technique of software bounded model checking (SBMC), which reduces the problem to a bounded state space, which is automatically searched exhaustively using a SAT solver as a backend.
Principles of Security and Trust
LIOPAR is the first dynamic language-level IFC system to support deterministic parallel thread execution and eliminate both internal and external-timing covert channels that exploit the runtime system, and it is proved that LIOPar is secure, i.e., it satisfies progress and timing-sensitive non-interference, even when exposing clock and heap-statistics APIs.
Privacy-Preserving Big Data Analytics: From Theory to Practice
This technical review aims at instilling in the reader an enhanced understanding of different approaches in applying secure MPC techniques to the IoT and big data analytics.
SoK: Computer-Aided Cryptography
A cross-cutting systematization of the computer-aided cryptography literature, focusing on three main areas: (i) design-level security (both symbolic security and computational security), (ii) functional correctness and efficiency, and (iii) implementation- level security (with a focus on digital side-channel resistance).
Cerebro: A Platform for Multi-Party Cryptographic Collaborative Learning
Cerebro is presented, an end-to-end collaborative learning platform that enables parties to compute learning tasks without sharing plaintext data and enables users to achieve good performance without manually navigating the complex performance tradeoffs between MPC protocols.


Wysteria: A Programming Language for Generic, Mixed-Mode Multiparty Computations
Wysteria is presented, a high-level programming language for writing SMCs and it is found that Wysteria's performance is competitive with prior approaches while making programming far easier, and more trustworthy.
Secure two-party computations in ANSI C
A nonstandard use of the bit-precise model checker CBMC is used which enables us to translate C programs into equivalent Boolean circuits and modify the standard CBMC translation from programs into Boolean formulas whose variables correspond to the memory bits manipulated by the program.
Probabilistic relational verification for cryptographic implementations
RF*, a relational extension of F*, a general-purpose higher-order stateful programming language with a verification system based on refinement types, is presented, which is a relational Hoare logic for a higher- order, stateful, probabilistic language.
Secure Multi-Party Computation of Boolean Circuits with Applications to Privacy in On-Line Marketplaces
This work implements the MPC protocol of Goldreich, Micali, and Wigderson, which uses a boolean representation and is secure against a semi-honest adversary corrupting any number of parties, and outperforms existing implementations including FairplayMP, VIFF, and SEPIA.
A Fast and Verified Software Stack for Secure Function Evaluation
This work provides concrete evidence of the feasibility of building efficient, verified, implementations of higher-level cryptographic systems, and concludes that it is competitive with state-of-the-art (unverified) approaches.
FairplayMP: a system for secure multi-party computation
This work presents FairplayMP, a system for secure multi-party computation that supplements the Fairplay system and modified the BMR protocol in a novel way and considerably improved its performance by using the Ben-Or-Goldwasser-Wigderson (BGW) protocol for the purpose of constructing gate tables.
Efficient Secure Computation with Garbled Circuits
This paper presents a Java-based framework that uses pipelining and circuit-level optimizations to build efficient and scalable privacy-preserving applications using garbled circuits, a generic technique that until recently was believed to be too inefficient to scale to realistic problems.
L1 - An Intermediate Language for Mixed-Protocol Secure Computation
A new intermediate language (L1) is proposed for optimizing SC compilers which enables efficient implementation of special protocols potentially mixing several general SC protocols and it is shown that only a combined view on algorithm and cryptographic protocol can discover SCs with best run-time performance.
Knowledge inference for optimizing secure multi-party computation
This work attempts to automatically discover when and if intermediate variables in a protocol will (eventually) be known to the parties involved in the computation, and formally state the two problems and describe the solutions.
Efficient lookup-table protocol in secure multiparty computation
This work uses the advanced encryption standard algorithm (AES) as a driving motivation, and by introducing different kinds of parallelization techniques, produces the fastest current SMC implementation of AES, improving the best previously reported results by well over an order of magnitude.