English
Related papers

Related papers: Rely-guarantee Reasoning about Concurrent Memory M…

200 papers

Guaranteeing runtime integrity of embedded system software is an open problem. Trade-offs between security and other priorities (e.g., cost or performance) are inherent, and resolving them is both challenging and important. The…

Cryptography and Security · Computer Science 2022-09-05 Ivan De Oliveira Nunes , Sashidhar Jakkamsetti , Youngil Kim , Gene Tsudik

Lower-end IoT devices typically have strict cost constraints that rule out usual security mechanisms available in general-purpose computers or higher-end devices. To secure low-end devices, various low-cost security architectures have been…

Cryptography and Security · Computer Science 2024-01-12 Ivan De Oliveira Nunes , Sashidhar Jakkamsetti , Norrathep Rattanavipanon , Gene Tsudik

We introduce SecRef*, a secure compilation framework protecting stateful programs verified in F* against linked unverified code, with which the program dynamically shares ML-style mutable references. To ease program verification in this…

The deterministic (timing) behavior of real-time systems (RTS) can be used by adversaries - say, to launch side channel attacks or even destabilize the system by denying access to critical resources. We propose a protocol (named REORDER) to…

Cryptography and Security · Computer Science 2019-04-10 Chien-Ying Chen , Monowar Hasan , AmirEmad Ghassami , Sibin Mohan , Negar Kiyavash

Compiler correctness proofs for higher-order concurrent languages are difficult: they involve establishing a termination-preserving refinement between a concurrent high-level source language and an implementation that uses low-level shared…

Programming Languages · Computer Science 2017-01-23 Joseph Tassarotti , Ralf Jung , Robert Harper

This paper aims to develop a verification method for procedural programs via a transformation into Logically Constrained Term Rewriting Systems (LCTRSs). To this end, we extend transformation methods based on integer TRSs to handle…

Logic in Computer Science · Computer Science 2025-09-01 Carsten Fuhs , Cynthia Kop , Naoki Nishida

We present our ongoing work on developing an end-to-end verified Rust compiler based on CompCert. It provides two guarantees: one is semantics preservation from Rust to assembly, i.e., the behaviors of source code includes the behaviors of…

Programming Languages · Computer Science 2026-02-10 Jinhua Wu , Yuting Wang , Liukun Yu , Linglong Meng

Although numerous defenses against memory vulnerability exploits have been studied so far, highly-compatible, precise, and efficient defense is still an open problem. In fact, existing defense methods have at least one of the following…

Cryptography and Security · Computer Science 2023-02-16 So Shizukuishi , Yoshitaka Arahori , Katsuhiko Gondow

Multiple successful compositional symbolic execution (CSE) tools and platforms exploit separation logic (SL) for compositional verification and/or incorrectness separation logic (ISL) for compositional bug-finding, including VeriFast,…

Programming Languages · Computer Science 2025-08-28 Andreas Lööw , Seung Hoon Park , Daniele Nantes-Sobrinho , Sacha-Élie Ayoun , Opale Sjöstedt , Philippa Gardner

Runtime verification (RV) consists in dynamically verifying that the event traces generated by single runs of a system under scrutiny (SUS) are compliant with the formal specification of its expected properties. RML (Runtime Monitoring…

Logic in Computer Science · Computer Science 2020-08-18 Davide Ancona , Angelo Ferrando , Viviana Mascardi

We present Security Relaxed Separation Logic (SecRSL), a separation logic for proving information-flow security of C11 programs in the Release-Acquire fragment with relaxed accesses. SecRSL is the first security logic that (1) supports…

Cryptography and Security · Computer Science 2021-09-10 Pengbo Yan , Toby Murray

The lock-free, ordered, linked list is an important, standard example of a concurrent data structure. An obvious, practical drawback of textbook implementations is that failed compare-and-swap (CAS) operations lead to retraversal of the…

Data Structures and Algorithms · Computer Science 2020-11-02 Jesper Larsson Träff , Manuel Pöter

Program verification is to develop the program's proof system, and to prove the proof system soundness with respect to a trusted operational semantics of the program. However, many practical program verifiers are not based on operational…

Logic in Computer Science · Computer Science 2021-02-09 ShangBei Wang

Universal Composability (UC) is the gold standard for cryptographic security, but mechanizing proofs of UC is notoriously difficult. A recently-discovered connection between UC and Robust Compilation (RC)$\unicode{x2014}$a novel theory of…

Cryptography and Security · Computer Science 2024-11-05 Robert Künnemann , Marco Patrignani , Ethan Cecchetti

We introduce SCIO*, a formally secure compilation framework for statically verified partial programs performing input-output (IO). The source language is an F* subset in which a verified program interacts with its IO-performing context via…

Component-based systems evolve as a new component is added or an existing one is replaced by a newer version. Hence, it is appealing to assure the new system still preserves its safety properties. However, instead of inspecting the new…

Formal Languages and Automata Theory · Computer Science 2017-09-14 Rosa Abbasi , Fatemeh Ghassemi , Ramtin Khosravi

Distributed systems adopt weak consistency to ensure high availability and low latency, but state convergence is hard to guarantee due to conflicts. Experts carefully design replicated data types (RDTs) that resemble sequential data types…

Programming Languages · Computer Science 2024-12-09 Kevin De Porre , Carla Ferreira , Elisa Gonzalez Boix

Proving correctness of distributed or concurrent algorithms is a mind-challenging and complex process. Slight errors in the reasoning are difficult to find, calling for computer-checked proof systems. In order to build computer-checked…

Distributed, Parallel, and Cluster Computing · Computer Science 2019-11-21 Armando Castañeda , Aurélie Hurault , Philippe Quéinnec , Matthieu Roy

This paper introduces Triosecuris, a formally verified defense against Spectre BTB, RSB, and PHT that combines CET-style hardware-assisted control-flow integrity with compiler-inserted speculative load hardening (SLH). Triosecuris is based…

Cryptography and Security · Computer Science 2026-04-03 Jonathan Baumann , Yonghyun Kim , Yan Farba , Catalin Hritcu , Julay Leatherman-Brooks

Chase-Lev deque is a concurrent data structure designed for efficient load balancing in multiprocessor scheduling. It employs a work-stealing strategy, where each thread possesses its own work-stealing deque to store tasks, and idle threads…

Logic in Computer Science · Computer Science 2023-09-08 Jaemin Choi