Hacspec: Executable and Verifiable Specifications for High-Assurance Cryptography
Offered By: Rust via YouTube
Course Description
Overview
Explore the hacspec domain-specific language for creating succinct, executable, and verifiable specifications in high-assurance cryptography. Learn about the challenges in bridging the gap between formal specifications and implementation, and discover how hacspec addresses the specification problem. Delve into the language's simple call-by-value semantics, linear typing with Rust specificities, and implementation details. Gain insights into the hacspec typechecker, programs, verification backend, and libraries. This 26-minute Rust conference talk, presented by Denis Merigoux, Franziskus Kiefer, and Karthikeyan Bhargavan, offers a comprehensive overview of hacspec's features and its potential impact on high-assurance cryptography development.
Syllabus
Intro
A tale of two worlds
Right now: the specification problem
Bringing the two worlds together
A taste of hacspec
Simple call-by-value semantics with variable context
Linear typing with Rust specificities
Implementation: AST or MIR?
The hacspec typechecker
hacspec programs
Verification backend: F
The hacspec libraries
Conclusion
The hacspec DSL - [7]
Taught by
Rust
Related Courses
SPARK 2014AdaCore via Independent Automated Reasoning: Symbolic Model Checking
EIT Digital via Coursera Software Testing and Verification
University System of Maryland via edX Haskell for Imperative Programmers
YouTube Model Checking and Temporal Logic - E. Allen Emerson's Turing Award Lecture
Association for Computing Machinery (ACM) via YouTube