skip to main content
10.1145/3578527.3581769acmotherconferencesArticle/Chapter ViewAbstractPublication PagesisecConference Proceedingsconference-collections
keynote

Proof-oriented programming for high-assurance systems

Published:23 February 2023Publication History

ABSTRACT

Proof-oriented programming is a paradigm where programs are designed and developed along with mathematical proofs of their correctness and security. In recent years, proof-oriented programming has reached a point where not only several high-assurance software components have been developed using it, but these components have also been deployed in production systems. In this talk, I will provide an overview of this paradigm in the context of F*, a proof-oriented programming language developed at Microsoft Research. I will briefly discuss several critical software components, developed from scratch in F*. These components are already deployed in production systems such as Windows Hyper-V, the Linux kernel, Firefox, and mbedTLS. As a complementary methodology for retrofitting strong, formal guarantees on existing legacy services, I will present the Zeta framework. Zeta works by running a small, proven correct monitor in a trusted execution environment validating responses from the service. The key idea is that we only need to develop the monitor using proof-oriented programming once-and-for-all, while the large legacy service remains untrusted. I will illustrate Zeta by sketching an example of how we can make a concurrent, high-performance, key-value store "zero trust" and argue that this step incurs modest software engineering effort and modest runtime overheads.

Index Terms

  1. Proof-oriented programming for high-assurance systems

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Other conferences
      ISEC '23: Proceedings of the 16th Innovations in Software Engineering Conference
      February 2023
      193 pages
      ISBN:9798400700644
      DOI:10.1145/3578527

      Copyright © 2023 Owner/Author

      Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 23 February 2023

      Check for updates

      Qualifiers

      • keynote
      • Research
      • Refereed limited

      Acceptance Rates

      Overall Acceptance Rate76of315submissions,24%
    • Article Metrics

      • Downloads (Last 12 months)21
      • Downloads (Last 6 weeks)1

      Other Metrics

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format .

    View HTML Format