EverCrypt: A fast, verified, cross-platform cryptographic provider

70Citations
Citations of this article
52Readers
Mendeley users who have this article in their library.

This article is free to access.

Abstract

We present EverCrypt: a comprehensive collection of verified, high-performance cryptographic functionalities available via a carefully designed API. The API provably supports agility (choosing between multiple algorithms for the same functionality) and multiplexing (choosing between multiple implementations of the same algorithm). Through abstraction and zero-cost generic programming, we show how agility can simplify verification without sacrificing performance, and we demonstrate how C and assembly can be composed and verified against shared specifications. We substantiate the effectiveness of these techniques with new verified implementations (including hashes, Curve25519, and AES-GCM) whose performance matches or exceeds the best unverified implementations. We validate the API design with two high-performance verified case studies built atop EverCrypt, resulting in line-rate performance for a secure network protocol and a Merkle-tree library, used in a production blockchain, that supports 2.7 million insertions/sec. Altogether, EverCrypt consists of over 124K verified lines of specs, code, and proofs, and it produces over 29K lines of C and 14K lines of assembly code.

Cite

CITATION STYLE

APA

Protzenko, J., Parno, B., Fromherz, A., Hawblitzel, C., Polubelova, M., Bhargavan, K., … Zanella-Beguelin, S. (2020). EverCrypt: A fast, verified, cross-platform cryptographic provider. In Proceedings - IEEE Symposium on Security and Privacy (Vol. 2020-May, pp. 983–1002). Institute of Electrical and Electronics Engineers Inc. https://doi.org/10.1109/SP40000.2020.00114

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free