A fast and verified software stack for secure function evaluation
| Main Author: | |
|---|---|
| Publication Date: | 2017 |
| Other Authors: | , , , , , |
| 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 |