Rastogi, Aseem (University of Maryland, College Park), “Language-based techniques for practical and trustworthy secure multi-party computations”

You are here

Inside Signal Processing Newsletter Home Page

Top Reasons to Join SPS Today!

1. IEEE Signal Processing Magazine
2. Signal Processing Digital Library*
3. Inside Signal Processing Newsletter
4. SPS Resource Center
5. Career advancement & recognition
6. Discounts on conferences and publications
7. Professional networking
8. Communities for students, young professionals, and women
9. Volunteer opportunities
10. Coming soon! PDH/CEU credits
Click here to learn more.

News and Resources for Members of the IEEE Signal Processing Society

Rastogi, Aseem (University of Maryland, College Park), “Language-based techniques for practical and trustworthy secure multi-party computations”

Rastogi, Aseem (University of Maryland, College Park), “Language-based techniques for practical and trustworthy secure multi-party computations” (2016) Advisor: Hicks, Michael

Secure Multi-party Computation (MPC) enables a set of parties to collaboratively compute, using cryptographic protocols, a function over their private data in a way that the participants do not see each other's data, they only see the final output. Typical MPC examples include statistical computations over joint private data, private set intersection, and auctions. While these applications are examples of monolithic MPC, richer MPC applications move between "normal" (i.e., per-party local) and "secure" (i.e., joint, multi-party secure) modes repeatedly, resulting overall in mixed-mode computations. For example, the authors might use MPC to implement the role of the dealer in a game of mental poker—the game will be divided into rounds of local decision-making (e.g. bidding) and joint interaction (e.g. dealing). Mixed-mode computations are also used to improve performance over monolithic secure computations.

Starting with the Fairplay project, several MPC frameworks have been proposed in the last decade to help programmers write MPC applications in a high-level language, while the toolchain manages the low-level details. However, these frameworks are either not expressive enough to allow writing mixed-mode applications or lack formal specification, and reasoning capabilities, thereby diminishing the parties' trust in such tools, and the programs written using them. Furthermore, none of the frameworks provides a verified toolchain to run the MPC programs, leaving the potential of security holes that can compromise the privacy of parties' data.

This dissertation presents language-based techniques to make MPC more practical and trustworthy. First, it presents the design and implementation of a new MPC Domain Specific Language, called WYSTERIA, for writing rich mixed-mode MPC applications. WYSTERIA provides several benefits over previous languages, including a conceptual single thread of control, generic support for more than two parties, high-level abstractions for secret shares, and a fully formalized type system and operational semantics. Using WYSTERIA, the authors have implemented several MPC applications, including, for the first time, a card dealing application.

The dissertation next presents WYS*, an embedding of W YSTERIA in F*, a full-featured verification oriented programming language. WYS* improves on WYSTERIA along three lines: (a) It enables programmers to formally verify the correctness and security properties of their programs. As far as the authors know, WYS* is the first language to provide verification capabilities for MPC programs. (b) It provides a partially verified toolchain to run MPC programs, and finally (c) It enables the MPC programs to use, with no extra effort, standard language constructs from the host language F*, thereby making it more usable and scalable.

Finally, the dissertation develops static analyses that help optimize monolithic MPC programs into mixed-mode MPC programs, while providing similar privacy guarantees as the monolithic versions.


IEEE SPS Educational Resources

IEEE SPS Resource Center

IEEE SPS YouTube Channel