A fast and verified software stack for secure function evaluation

Bibliographic Details
Main Author: Almeida, José Bacelar
Publication Date: 2017
Other Authors: Barbosa, Manuel, Barthe, Gilles Jacques Denis, Dupressoir, François, Grégoire, Benjamin, Laporte, Vincent, Pereira, Vitor
Language: eng
Source: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Download full: http://hdl.handle.net/1822/50515
Summary: 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.
id RCAP_1b950bb264d55af99e38e35666337ac9
oai_identifier_str oai:repositorium.sdum.uminho.pt:1822/50515
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling A fast and verified software stack for secure function evaluationSecure function evaluationCertified compilationVerified implementationCiências Naturais::Ciências da Computação e da InformaçãoScience & TechnologyWe 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.POCI-01-0145-FEDER-006961, FCT-PD/BD/113967/2015info:eu-repo/semantics/publishedVersionAssociation for Computing Machinery (ACM)Universidade do MinhoAlmeida, José BacelarBarbosa, ManuelBarthe, Gilles Jacques DenisDupressoir, FrançoisGrégoire, BenjaminLaporte, VincentPereira, Vitor2017-10-302017-10-30T00:00:00Zconference paperinfo:eu-repo/semantics/publishedVersionapplication/pdfhttp://hdl.handle.net/1822/50515eng978-1-4503-4946-8/17/101543-722110.1145/3133956.3134017The original publication is available at https://dl.acm.org/citation.cfm?id=3134017info:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2024-05-11T05:09:47Zoai:repositorium.sdum.uminho.pt:1822/50515Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T15:10:00.014406Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv A fast and verified software stack for secure function evaluation
title A fast and verified software stack for secure function evaluation
spellingShingle A fast and verified software stack for secure function evaluation
Almeida, José Bacelar
Secure function evaluation
Certified compilation
Verified implementation
Ciências Naturais::Ciências da Computação e da Informação
Science & Technology
title_short A fast and verified software stack for secure function evaluation
title_full A fast and verified software stack for secure function evaluation
title_fullStr A fast and verified software stack for secure function evaluation
title_full_unstemmed A fast and verified software stack for secure function evaluation
title_sort A fast and verified software stack for secure function evaluation
author Almeida, José Bacelar
author_facet Almeida, José Bacelar
Barbosa, Manuel
Barthe, Gilles Jacques Denis
Dupressoir, François
Grégoire, Benjamin
Laporte, Vincent
Pereira, Vitor
author_role author
author2 Barbosa, Manuel
Barthe, Gilles Jacques Denis
Dupressoir, François
Grégoire, Benjamin
Laporte, Vincent
Pereira, Vitor
author2_role author
author
author
author
author
author
dc.contributor.none.fl_str_mv Universidade do Minho
dc.contributor.author.fl_str_mv Almeida, José Bacelar
Barbosa, Manuel
Barthe, Gilles Jacques Denis
Dupressoir, François
Grégoire, Benjamin
Laporte, Vincent
Pereira, Vitor
dc.subject.por.fl_str_mv Secure function evaluation
Certified compilation
Verified implementation
Ciências Naturais::Ciências da Computação e da Informação
Science & Technology
topic Secure function evaluation
Certified compilation
Verified implementation
Ciências Naturais::Ciências da Computação e da Informação
Science & Technology
description 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.
publishDate 2017
dc.date.none.fl_str_mv 2017-10-30
2017-10-30T00:00:00Z
dc.type.driver.fl_str_mv conference paper
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/1822/50515
url http://hdl.handle.net/1822/50515
dc.language.iso.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv 978-1-4503-4946-8/17/10
1543-7221
10.1145/3133956.3134017
The original publication is available at https://dl.acm.org/citation.cfm?id=3134017
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Association for Computing Machinery (ACM)
publisher.none.fl_str_mv Association for Computing Machinery (ACM)
dc.source.none.fl_str_mv reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833595138802188288