First-order Gradual Information Flow Types with Gradual Guarantees

03/28/2020
by   Abhishek Bichhawat, et al.
0

Gradual type systems seamlessly integrate statically-typed programs with dynamically-typed programs. The runtime for gradual type systems can be viewed as a monitor which refines and enforces constraints to ensure type-preservation. Gradual typing has been applied to information flow types, where information flow monitors are derived from gradual information flow types. However, existing work gives up the dynamic gradual guarantee – the property that loosening the policies of a program should not cause more runtime errors – in favor of noninterference – the key security property for information flow control systems. In this paper, we re-examine the connection between gradual information flow types and information flow monitors, and identify the root cause for the tension between satisfying gradual guarantees and noninterference. We develop a runtime semantics for a simple imperative language with gradual information flow types that provides both noninterference and the dynamic gradual guarantee. We leverage a proof technique developed for FlowML, which reduces noninterference proofs to preservation proofs, to prove the key security property.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
06/05/2017

Towards a Flow- and Path-Sensitive Information Flow Analysis: Technical Report

This paper investigates a flow- and path-sensitive static information fl...
research
01/01/2022

Secure Information Flow Typing in LUSTRE

Synchronous reactive data flow is a paradigm that provides a high-level ...
research
10/25/2020

Giving Semantics to Program-Counter Labels via Secure Effects

Type systems designed for information-flow control commonly use a progra...
research
05/22/2021

Normalising Lustre Preserves Security

The synchronous reactive data flow language LUSTRE is an expressive lang...
research
07/08/2018

Graduality from Embedding-projection Pairs (Extended Version)

Gradually typed languages allow statically typed and dynamically typed c...
research
05/02/2019

Typed-based Relaxed Noninterference for Free

Despite the clear need for specifying and enforcing information flow pol...
research
09/15/2017

VST-Flow: Fine-grained low-level reasoning about real-world C code

We show how support for information-flow security proofs could be added ...

Please sign up or login with your details

Forgot password? Click here to reset