Skip to Main content Skip to Navigation
Conference papers

A Fast and Verified Software Stack for Secure Function Evaluation

Abstract : We present a high-assurance software stack for secure function evaluation (SFE). Our stack consists of three components: i. a verified compiler (CircGen) that translates C programs into Boolean circuits; ii. a verified implementation of Yao's SFE protocol based on garbled circuits and oblivious transfer; and iii. transparent application integration and communications via FRESCO, an open-source framework for secure multiparty computation (MPC). CircGen is a general purpose tool that builds on CompCert, a verified optimizing compiler for C. It can be used in arbitrary Boolean circuit-based cryptography deployments. The security of our SFE protocol implementation is formally verified using EasyCrypt, a tool-assisted framework for building high-confidence cryptographic proofs, and it leverages a new formalization of garbled circuits based on the framework of Bellare, Hoang, and Rogaway (CCS 2012). We conduct a practical evaluation of our approach, and conclude that it is competitive with state-of-the-art (unverified) approaches. Our work provides concrete evidence of the feasibility of building efficient, verified, implementations of higher-level cryptographic systems. All our development is publicly available.
Document type :
Conference papers
Complete list of metadatas

Cited literature [54 references]  Display  Hide  Download
Contributor : Benjamin Gregoire <>
Submitted on : Monday, November 27, 2017 - 11:20:27 AM
Last modification on : Sunday, November 15, 2020 - 7:30:03 PM


Files produced by the author(s)


  • HAL Id : hal-01649104, version 1



José Almeida, Manuel Barbosa, Gilles Barthe, Francois Dupressoir, Benjamin Grégoire, et al.. A Fast and Verified Software Stack for Secure Function Evaluation. CCS 2017 - ACM SIGSAC Conference on Computer and Communications Security, Oct 2017, Dallas, United States. pp.1-18. ⟨hal-01649104⟩



Record views


Files downloads