Paper 2019/1393

SoK: Computer-Aided Cryptography

Manuel Barbosa, Gilles Barthe, Karthik Bhargavan, Bruno Blanchet, Cas Cremers, Kevin Liao, and Bryan Parno

Abstract

Computer-aided cryptography is an active area of research that develops and applies formal, machine-checkable approaches to the design, analysis, and implementation of cryptography. We present 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). In each area, we first clarify the role of computer-aided cryptography---how it can help and what the caveats are---in addressing current challenges. We next present a taxonomy of state-of-the-art tools, comparing their accuracy, scope, trustworthiness, and usability. Then, we highlight their main achievements, trade-offs, and research challenges. After covering the three main areas, we present two case studies. First, we study efforts in combining tools focused on different areas to consolidate the guarantees they can provide. Second, we distill the lessons learned from the computer-aided cryptography community's involvement in the TLS 1.3 standardization effort. Finally, we conclude with recommendations to paper authors, tool developers, and standardization bodies moving forward.

Metadata
Available format(s)
PDF
Category
Implementation
Publication info
Published elsewhere. Oakland 2021
Keywords
computer-aided cryptographyformal methodsverificationsecurity analysisimplementationside-channel resistance
Contact author(s)
kevliao @ mit edu
History
2020-07-09: revised
2019-12-04: received
See all versions
Short URL
https://ia.cr/2019/1393
License
Creative Commons Attribution
CC BY

BibTeX

@misc{cryptoeprint:2019/1393,
      author = {Manuel Barbosa and Gilles Barthe and Karthik Bhargavan and Bruno Blanchet and Cas Cremers and Kevin Liao and Bryan Parno},
      title = {SoK: Computer-Aided Cryptography},
      howpublished = {Cryptology ePrint Archive, Paper 2019/1393},
      year = {2019},
      note = {\url{https://eprint.iacr.org/2019/1393}},
      url = {https://eprint.iacr.org/2019/1393}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.