Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
167 tokens/sec
GPT-4o
7 tokens/sec
Gemini 2.5 Pro Pro
42 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Journey Beyond Full Abstraction: Exploring Robust Property Preservation for Secure Compilation (1807.04603v6)

Published 12 Jul 2018 in cs.PL and cs.CR

Abstract: (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 satisfied against arbitrary adversarial contexts. We study robustly preserving various classes of trace properties such as safety, of hyperproperties such as noninterference, and of relational hyperproperties such as trace equivalence. This leads to many new secure compilation criteria, some of which are easier to practically achieve and prove than full abstraction, and some of which provide strictly stronger security guarantees. For each of the studied criteria we propose an equivalent "property-free" characterization that clarifies which proof techniques apply. For relational properties and hyperproperties, which relate the behaviors of multiple programs, our formal definitions of the property classes themselves are novel. We order our criteria by their relative strength and show several collapses and separation results. Finally, we adapt existing proof techniques to show that even the strongest of our secure compilation criteria, the robust preservation of all relational hyperproperties, is achievable for a simple translation from a statically typed to a dynamically typed language.

Citations (61)

Summary

  • The paper explores secure compilation beyond full abstraction by studying robust preservation of various security properties like safety, hyperproperties, and relational hyperproperties against adversarial code.
  • Researchers introduce a structured framework of property classes and robust preservation criteria, offering "property-free" characterizations to simplify proofs of secure compilation.
  • Practical contributions include adapting proof techniques like back-translation for different criteria and highlighting the need for tailoring secure compilation approaches based on specific application requirements.

Overview of Secure Compilation through Robust Property Preservation

The paper "Journey Beyond Full Abstraction: Exploring Robust Property Preservation for Secure Compilation" presents a comprehensive paper of formal secure compilation criteria focused on robust property preservation, aiming to facilitate secure interoperability with linked target code. While traditional secure compilation research has primarily targeted the preservation of observational equivalence for achieving full abstraction, the paper explores an expansive space of security properties that can be preserved against adversarial code. These analyses consider trace properties such as safety, hyperproperties like noninterference, and relational hyperproperties such as trace equivalence, leading to novel secure compilation criteria with varying strengths and practical applicability.

Theoretical Framing and Property Classes

The researchers introduce a series of property classes, providing a structured approach to defining and preserving security properties across different compilation chains. Trace properties, such as safety, focus on limiting violations observable through finite trace prefixes. Hyperproperties extend this concept to encompass sets of traces, ensuring constraints like noninterference and observational determinism. Furthermore, relational hyperproperties address relations between behaviors of multiple programs, presenting a challenge to maintain across compiled binaries.

Central to this exploration are the concepts of robust property preservation. Robust preservation mandates that a property or relation holds against any adversarial context the compiled program might be linked with. The authors dissect these concepts into several criteria and propose "property-free" characterizations to aid in the proof of these criteria without explicit reference to specific properties, streamlining an otherwise intricate proof technique.

Security Criteria and Structural Implications

The paper delineates multiple secure compilation criteria based on the robust preservation of trace properties, hyperproperties, and relational hyperproperties. These criteria are arranged hierarchically based on their relative strength and implications, with robust relational hyperproperties forming the upper bounds due to their comprehensive explanatory power. The delineation of these criteria is depicted through a Hasse diagram illustrating implications, collapses, and separation results across property classes.

Certain criteria, such as robust preservation of trace equivalence (RTEP), are highlighted for their relation to full abstraction, particularly within determinate language settings where they coincide with observational equivalence. While full abstraction does not universally imply robust preservation of safety or hypersafety, the rich space of criteria introduced does allow for securing properties realistically in different compilation scenarios.

Practical and Methodological Contributions

From a practical perspective, the paper proposes viable methodologies for achieving robust property preservation. Notably, two proof techniques adapted from full abstraction are showcased: context-based back-translation and trace-based back-translation, applicable to differing extents across the newly proposed criteria. These techniques underscore the iterative approach to proving secure compilation chains robust against various classes of adversarial contexts.

The research emphasizes the diversity within secure compilation, advocating for a tailored balance between security and efficiency given specific application domains. This approach recognizes that a singular criterion is not universally applicable and encourages compiler developers to embrace criteria fitting their security and operational constraints, informed by this broad paper.

Implications and Future Directions

The paper's implications extend both practically and theoretically, impacting the development of security-conscious compilers with strong guarantees against adversity. Particularly, the challenges in preserving relational hyperproperties underscore the complexities when hiding program attributes from contexts in low-level languages. Furthermore, potential overlaps and further collapses indicated by full reflection and nondeterministic choices call for innovative exploration.

Moving forward, the paper sets a foundation for further investigation into secure compilation, with the potential to expand robust property preservation to languages with richer trace semantics or to address side-channel vulnerabilities during compilation. The authors advocate for practical secure compilation chains, reinforcing the need for efficiency even as security is achieved against linked code.

In conclusion, this paper paves the way for advanced secure compilation by elaborating on robust property preservation, offering insights critical to developing compilers that maintain source-level abstractions amidst low-level adversarial interactions. Researchers and practitioners are provided with a comprehensive framework to assess, prove, and implement secure compilation, inviting future exploration into this increasingly pertinent aspect of language security.

Youtube Logo Streamline Icon: https://streamlinehq.com