论文标题

一阶渐进信息流类型具有逐渐保证

First-order Gradual Information Flow Types with Gradual Guarantees

论文作者

Bichhawat, Abhishek, McCall, McKenna, Jia, Limin

论文摘要

信息流类型系统通过在编译时检测未经授权的数据流来实施非干扰的安全属性。但是,它们需要精确的类型注释,使其在实践中难以使用,因为许多旧基础架构都是用非类型或动态性的语言编写的。逐渐键入无缝地集成了静态和动态键入,提供了两种方法中最好的,并已应用于信息流控制,在此,信息流监视器源自逐渐的安全性类型。对渐进信息流的先前工作,在非干预和动态渐进保证之间键入发现的紧张局势 - 程序中不精确的安全类型注释的属性不应导致更多的运行时错误。本文重新检查了渐进信息流类型和信息流监视器之间的连接,以确定逐渐保证和非干预之间张力的根本原因。我们为简单的命令语言开发运行时语义,其逐渐信息流类型既可以提供非干预和逐渐保证。我们利用用于FlowML开发的证明技术,并将非干预证明减少到保存证明。

Information flow type systems enforce the security property of noninterference by detecting unauthorized data flows at compile-time. However, they require precise type annotations, making them difficult to use in practice as much of the legacy infrastructure is written in untyped or dynamically-typed languages. Gradual typing seamlessly integrates static and dynamic typing, providing the best of both approaches, and has been applied to information flow control, where information flow monitors are derived from gradual security types. Prior work on gradual information flow typing uncovered tensions between noninterference and the dynamic gradual guarantee -- the property that less precise security type annotations in a program should not cause more runtime errors. This paper re-examines the connection between gradual information flow types and information flow monitors to identify the root cause of the tension between the gradual guarantees and noninterference. We develop runtime semantics for a simple imperative language with gradual information flow types that provides both noninterference and gradual guarantees. We leverage a proof technique developed for FlowML and reduce noninterference proofs to preservation proofs.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源