A verified static information-flow control library

被引:14
|
作者
Vassena, Marco [1 ]
Russo, Alejandro [1 ]
Buiras, Pablo [2 ]
Waye, Lucas [2 ]
机构
[1] Chalmers Univ Technol, Gothenburg, Sweden
[2] Harvard Univ, Cambridge, MA 02138 USA
关键词
Information Flow Control; Non Interference; Functional Programming; Haskell; Agda;
D O I
10.1016/j.jlamp.2017.12.003
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
The programming language Haskell plays a unique, privileged role in information-flow control (IFC) research: it is able to enforce information security via libraries. Many state-of-the-art IFC libraries (e.g., LIO and HLIO) support a variety of advanced features like mutable data structures, exceptions, and concurrency, whose subtle interaction makes verification of security guarantees challenging. In this work, we focus on MAC, a statically-enforced IFC library for Haskell. In MAC, like other IFC libraries, computations have a well-established algebraic structure for computations (i.e., monads) responsible to manipulate labeled values values coming from an abstract data type which associates a sensitivity label to a piece of information. In this work, we enrich labeled values with a functor structure and provide an applicative functor operator which encourages a more functional programming style and simplifies code. Furthermore, we present a full-fledged, mechanically-verified model of MAC. Specifically, we show progress-insensitive noninterference for our sequential calculus and pinpoint sufficient requirements on the scheduler to prove progress-sensitive noninterference for our concurrent calculus. For that, we study the security guarantees of MAC using term erasure, a proof technique that ensures that the same public output should be produced if secrets are erased before or after program execution. As another contribution, we extend term erasure with two-steps erasure, a flexible novel technique that greatly simplifies the noninterference proof and helps to prove many advanced features of MAC. (C) 2017 Elsevier Inc. All rights reserved.
引用
收藏
页码:148 / 180
页数:33
相关论文
共 50 条