English
Related papers

Related papers: Securing Verified IO Programs Against Unverified C…

200 papers

Hardware-assisted reference monitoring is receiving increasing attention as a way to improve the security of existing software. One example is the PIPE architecture extension, which attaches metadata tags to register and memory values and…

Cryptography and Security · Computer Science 2020-12-21 CHR Chhak , Andrew Tolmach , Sean Anderson

Cyber-physical systems (CPS) such as autonomous cars, aircraft, and robots are often also safety-critical; thus it is imperative that they operate as intended with a high degree of certainty. Formal verification has been employed to verify…

Programming Languages · Computer Science 2026-05-07 Serra Z. Dane , Jiawei Chen , Marc Pouzet , Jean-Baptiste Jeannin

Operational semantics has established itself as a flexible but rigorous means to describe the meaning of programming languages. Oftentimes, it is felt necessary to keep a semantics small, for example to facilitate its use for model checking…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-03-17 Benjamin Morandi , Sebastian Nanz , Bertrand Meyer

Service-based systems are software systems composed of autonomous components or services provided by different vendors, deployed on remote machines and accessible through the web. One of the challenges of modern software engineering is to…

Software Engineering · Computer Science 2011-08-10 Natallia Kokash , Farhad Arbab , Behnaz Changizi , Leonid Makhnist

Although Secure Multiparty Computation (SMC) has seen considerable development in recent years, its use is challenging, resulting in complex code which obscures whether the security properties or correctness guarantees hold in practice. For…

Programming Languages · Computer Science 2023-06-02 Amy Rathore , Marina Blanton , Marco Gaboardi , Lukasz Ziarek

Agile development processes and component-based software architectures are two software engineering approaches that contribute to enable the rapid building and evolution of applications. Nevertheless, few approaches have proposed a…

Software Engineering · Computer Science 2010-02-05 Guillaume Waignier , Estéban Duguepéroux , Anne-Françoise Le Meur , Laurence Duchien

Prior research yielded many techniques to mitigate software compromise for low-end Internet of Things (IoT) devices. Some of them detect software modifications via remote attestation and similar services, while others preventatively ensure…

Cryptography and Security · Computer Science 2025-01-17 Sashidhar Jakkamsetti , Youngil Kim , Andrew Searles , Gene Tsudik

Formal verification of concurrent operating systems (OSs) is challenging, in particular the verification of the dynamic memory management due to its complex data structures and allocation algorithm. An incorrect specification and…

Software Engineering · Computer Science 2023-09-20 Yongwang Zhao , David Sanan

In the last three decades, memory safety issues in system programming languages such as C or C++ have been one of the significant sources of security vulnerabilities. However, there exist only a few attempts with limited success to cope…

Software Engineering · Computer Science 2021-07-05 Felipe R. Monteiro , Mikhail R. Gadelha , Lucas C. Cordeiro

Modern Systems-on-Chip (SoC) designs are increasingly heterogeneous and contain specialized semi-programmable accelerators in addition to programmable processors. In contrast to the pre-accelerator era, when the ISA played an important role…

Hardware Architecture · Computer Science 2019-01-29 Bo-Yuan Huang , Hongce Zhang , Pramod Subramanyan , Yakir Vizel , Aarti Gupta , Sharad Malik

(CROPPED TO FIT IN ARXIV'S SILLY LIMIT. SEE PDF FOR COMPLETE ABSTRACT.) We are the first to thoroughly explore a large space of formal secure compilation criteria based on robust property preservation, i.e., the preservation of properties…

Programming Languages · Computer Science 2020-11-18 Carmine Abate , Roberto Blanco , Deepak Garg , Catalin Hritcu , Marco Patrignani , Jérémy Thibault

High-assurance security systems require strong isolation from the untrusted world to protect the security-sensitive or privacy-sensitive data they process. Existing regulations impose that such systems must execute in a trustworthy…

Cryptography and Security · Computer Science 2022-05-13 Wojciech Ozga , Rasha Faqeh , Do Le Quoc , Franz Gregor , Silvio Dragone , Christof Fetzer

Current static verification techniques support a wide range of programs. However, such techniques only support complete and detailed specifications, which places an undue burden on users. To solve this problem, prior work proposed gradual…

Solidity is an object-oriented and high-level language for writing smart contracts that are used to execute, verify and enforce credible transactions on permissionless blockchains. In the last few years, analysis of smart contracts has…

Software Engineering · Computer Science 2019-08-16 Chao Peng , Sefa Akca , Ajitha Rajan

In this dissertation, we present LaSCO, the Language for Security Constraints on Objects, a new approach to expressing security policies using policy graphs and present a method for enforcing policies so expressed. Other approaches for…

Cryptography and Security · Computer Science 2007-05-23 James A. Hoagland

Static verification of a program source code correctness is an important element of software reliability. Formal verification of software programs involves proving that a program satisfies a formal specification of its behavior. Many…

Software Engineering · Computer Science 2017-10-19 Daniel de Carvalho , Manuel Mazzara , Bogdan Mingela , Larisa Safina , Alexander Tchitchigin , Nikolay Troshkov

We examine verification of concurrent programs under the total store ordering (TSO) semantics used by the x86 architecture. In our model, threads manipulate variables over infinite domains and they can check whether variables are related…

Formal Languages and Automata Theory · Computer Science 2024-01-22 Parosh Aziz Abdulla , Mohamed Faouzi Atig , Florian Furbach , Shashwat Garg

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

Composition technologies improve reuse in the development of large-scale complex systems. Safety critical systems require intensive validation and verification activities. These activities should be compositional in order to reduce the…

Software Engineering · Computer Science 2014-04-04 Mounira Kezadri Hamiaz , Marc Pantel , Benoît Combemale , Xavier Thirioux

Security Enhanced Linux (SELinux) is a security architecture for Linux implementing mandatory access control. It has been used in numerous security-critical contexts ranging from servers to mobile devices. But this is challenging as SELinux…

Cryptography and Security · Computer Science 2022-06-01 Lorenzo Ceragioli , Letterio Galletta , Pierpaolo Degano , David Basin