Home > Research > Publications & Outputs > DY*: A Modular Symbolic Verification Framework ...

Links

Text available via DOI:

View graph of relations

DY*: A Modular Symbolic Verification Framework for Executable Cryptographic Protocol Code

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Published

Standard

DY*: A Modular Symbolic Verification Framework for Executable Cryptographic Protocol Code. / Bhargavan, Karthikeyan; Bichhawat, Abhishek; Do, Quoc Huy et al.
2021 IEEE European Symposium on Security and Privacy, (Euro S & P) 2021. IEEE, 2021. p. 523-542.

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Harvard

Bhargavan, K, Bichhawat, A, Do, QH, Hosseyni, P, Küsters, R, Schmitz, G & Würtele, T 2021, DY*: A Modular Symbolic Verification Framework for Executable Cryptographic Protocol Code. in 2021 IEEE European Symposium on Security and Privacy, (Euro S & P) 2021. IEEE, pp. 523-542. https://doi.org/10.1109/eurosp51992.2021.00042

APA

Bhargavan, K., Bichhawat, A., Do, Q. H., Hosseyni, P., Küsters, R., Schmitz, G., & Würtele, T. (2021). DY*: A Modular Symbolic Verification Framework for Executable Cryptographic Protocol Code. In 2021 IEEE European Symposium on Security and Privacy, (Euro S & P) 2021 (pp. 523-542). IEEE. https://doi.org/10.1109/eurosp51992.2021.00042

Vancouver

Bhargavan K, Bichhawat A, Do QH, Hosseyni P, Küsters R, Schmitz G et al. DY*: A Modular Symbolic Verification Framework for Executable Cryptographic Protocol Code. In 2021 IEEE European Symposium on Security and Privacy, (Euro S & P) 2021. IEEE. 2021. p. 523-542 Epub 2021 Sept 6. doi: 10.1109/eurosp51992.2021.00042

Author

Bhargavan, Karthikeyan ; Bichhawat, Abhishek ; Do, Quoc Huy et al. / DY*: A Modular Symbolic Verification Framework for Executable Cryptographic Protocol Code. 2021 IEEE European Symposium on Security and Privacy, (Euro S & P) 2021. IEEE, 2021. pp. 523-542

Bibtex

@inproceedings{f493e1527c0a4683940e22120e402784,
title = "DY*: A Modular Symbolic Verification Framework for Executable Cryptographic Protocol Code",
abstract = "We present DY∗, a new formal verification framework for the symbolic security analysis of cryptographic protocol code written in the F∗ programming language. Unlike automated symbolic provers, our framework accounts for advanced protocol features like unbounded loops and mutable recursive data structures, as well as low-level implementation details like protocol state machines and message formats, which are often at the root of real-world attacks. Our work extends a long line of research on using dependent type systems for this task, but takes a fundamentally new approach by explicitly modeling the global trace-based semantics within the framework, hence bridging the gap between trace-based and type-based protocol analyses. This approach enables us to uniformly, precisely, and soundly model, for the first time using dependent types, long-lived mutable protocol state, equational theories, fine-grained dynamic corruption, and trace-based security properties like forward secrecy and post-compromise security. DY∗ is built as a library of F∗ modules that includes a model of low-level protocol execution, a Dolev-Yao symbolic attacker, and generic security abstractions and lemmas, all verified using F∗. The library exposes a high-level API that facilitates succinct security proofs for protocol code. We demonstrate the effectiveness of this approach through a detailed symbolic security analysis of the Signal protocol that is based on an interoperable implementation of the protocol from prior work, and is the first mechanized proof of Signal to account for forward and post-compromise security over an unbounded number of protocol rounds.",
author = "Karthikeyan Bhargavan and Abhishek Bichhawat and Do, {Quoc Huy} and Pedram Hosseyni and Ralf K{\"u}sters and Guido Schmitz and Tim W{\"u}rtele",
year = "2021",
month = nov,
day = "4",
doi = "10.1109/eurosp51992.2021.00042",
language = "English",
isbn = "9781665430487",
pages = "523--542",
booktitle = "2021 IEEE European Symposium on Security and Privacy, (Euro S & P) 2021",
publisher = "IEEE",

}

RIS

TY - GEN

T1 - DY*: A Modular Symbolic Verification Framework for Executable Cryptographic Protocol Code

AU - Bhargavan, Karthikeyan

AU - Bichhawat, Abhishek

AU - Do, Quoc Huy

AU - Hosseyni, Pedram

AU - Küsters, Ralf

AU - Schmitz, Guido

AU - Würtele, Tim

PY - 2021/11/4

Y1 - 2021/11/4

N2 - We present DY∗, a new formal verification framework for the symbolic security analysis of cryptographic protocol code written in the F∗ programming language. Unlike automated symbolic provers, our framework accounts for advanced protocol features like unbounded loops and mutable recursive data structures, as well as low-level implementation details like protocol state machines and message formats, which are often at the root of real-world attacks. Our work extends a long line of research on using dependent type systems for this task, but takes a fundamentally new approach by explicitly modeling the global trace-based semantics within the framework, hence bridging the gap between trace-based and type-based protocol analyses. This approach enables us to uniformly, precisely, and soundly model, for the first time using dependent types, long-lived mutable protocol state, equational theories, fine-grained dynamic corruption, and trace-based security properties like forward secrecy and post-compromise security. DY∗ is built as a library of F∗ modules that includes a model of low-level protocol execution, a Dolev-Yao symbolic attacker, and generic security abstractions and lemmas, all verified using F∗. The library exposes a high-level API that facilitates succinct security proofs for protocol code. We demonstrate the effectiveness of this approach through a detailed symbolic security analysis of the Signal protocol that is based on an interoperable implementation of the protocol from prior work, and is the first mechanized proof of Signal to account for forward and post-compromise security over an unbounded number of protocol rounds.

AB - We present DY∗, a new formal verification framework for the symbolic security analysis of cryptographic protocol code written in the F∗ programming language. Unlike automated symbolic provers, our framework accounts for advanced protocol features like unbounded loops and mutable recursive data structures, as well as low-level implementation details like protocol state machines and message formats, which are often at the root of real-world attacks. Our work extends a long line of research on using dependent type systems for this task, but takes a fundamentally new approach by explicitly modeling the global trace-based semantics within the framework, hence bridging the gap between trace-based and type-based protocol analyses. This approach enables us to uniformly, precisely, and soundly model, for the first time using dependent types, long-lived mutable protocol state, equational theories, fine-grained dynamic corruption, and trace-based security properties like forward secrecy and post-compromise security. DY∗ is built as a library of F∗ modules that includes a model of low-level protocol execution, a Dolev-Yao symbolic attacker, and generic security abstractions and lemmas, all verified using F∗. The library exposes a high-level API that facilitates succinct security proofs for protocol code. We demonstrate the effectiveness of this approach through a detailed symbolic security analysis of the Signal protocol that is based on an interoperable implementation of the protocol from prior work, and is the first mechanized proof of Signal to account for forward and post-compromise security over an unbounded number of protocol rounds.

U2 - 10.1109/eurosp51992.2021.00042

DO - 10.1109/eurosp51992.2021.00042

M3 - Conference contribution/Paper

SN - 9781665430487

SP - 523

EP - 542

BT - 2021 IEEE European Symposium on Security and Privacy, (Euro S & P) 2021

PB - IEEE

ER -