Developers of high-assurance software aim to design functionally correct software with properties like confidentiality. However, confidentiality is not a direct consequence of functional correctness, as there could be unintentional side-channel leaks like execution time that might help the attacker to retrieve secret data.For example, a...
-
November 22, 2023 (v1)PublicationUploaded on: December 17, 2023
-
November 22, 2023 (v1)Publication
Developers of high-assurance software aim to design functionally correct software with properties like confidentiality. However, confidentiality is not a direct consequence of functional correctness, as there could be unintentional side-channel leaks like execution time that might help the attacker to retrieve secret data.For example, a...
Uploaded on: December 10, 2023 -
November 15, 2021 (v1)Conference paper
Many security properties of interest are captured by instrumented semantics that model the functional behavior and the leakage of programs. For several important properties, including cryptographic constant-time (CCT), leakage models are sufficiently abstract that one can define instrumented semantics for high-level and low-level programs. One...
Uploaded on: December 4, 2022 -
November 7, 2022 (v1)Conference paper
Cryptographic constant-time (CT) is a popular programming discipline used by cryptographic libraries to protect themselves against timing attacks. The CT discipline aims to enforce that program execution does not leak secrets, where leakage is defined by a formal leakage model. In practice, different leakage models coexist, sometimes even...
Uploaded on: December 3, 2022 -
May 24, 2021 (v1)Conference paper
High-assurance cryptography leverages methods from program verification and cryptography engineering to deliver efficient cryptographic software with machine-checked proofs of memory safety, functional correctness, provable security, and absence of timing leaks. Traditionally, these guarantees are established under a sequential execution...
Uploaded on: December 4, 2022 -
May 22, 2023 (v1)Conference paper
The current gold standard of cryptographic software is to write efficient libraries with systematic protections against timing attacks. In order to meet this goal, cryptographic engineers increasingly use high-assurance cryptography tools. These tools guide programmers and provide rigorous guarantees that can be verified independently by...
Uploaded on: May 27, 2023