Achieving information flow security through monadic control of effects

  • Authors:
  • William L. Harrison;James Hook

  • Affiliations:
  • Department of Computer Science, University of Missouri, Columbia, MO, USA. E-mail: harrisonwl@missouri.edu;Department of Computer Science, Portland State University, Portland, OR, USA. E-mail: hook@cs.pdx.edu

  • Venue:
  • Journal of Computer Security - 18th IEEE Computer Security Foundations Symposium (CSF 18)
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper advocates a novel approach to the construction of secure software: controlling information flow and maintaining integrity via monadic encapsulation of effects. This approach is constructive, relying on properties of monads and monad transformers to build, verify, and extend secure software systems. We illustrate this approach by construction of abstract operating systems called separation kernels. Starting from a mathematical model of shared-state concurrency based on monads of resumptions and state, we outline the development by stepwise refinements of separation kernels supporting Unix-like system calls, interdomain communication, and a formally verified security policy (domain separation). Because monads may be easily and safely represented within any pure, higher-order, typed functional language, the resulting system models may be directly realized within a language such as Haskell.