Publication: Towards a Practical Secure Concurrent Language
Open/View Files
Date
2012
Authors
Published Version
Journal Title
Journal ISSN
Volume Title
Publisher
ACM Press
The Harvard community has made this article openly available. Please share how this access benefits you.
Citation
Muller, Stefan, and Stephen Chong. 2012. Towards a Practical Secure Concurrent Language. In Proceedings of the ACM International Conference on Object Oriented Programming Systems Languages and Applications - OOPSLA '12, 57-74. New York: ACM Press.
Research Data
Abstract
We demonstrate that a practical concurrent language can be extended in a natural way with information security mechanisms that provably enforce strong information security guarantees. We extend the X10 concurrent programming language with coarse-grained information-flow control. Central to X10 concurrency abstractions is the notion of a place: a container for data and computation. We associate a security level with each place, and restrict each place to store only data appropriate for that security level. When places interact only with other places at the same security level, then our security mechanisms impose no restrictions. When places of differing security levels interact, our information security analysis prevents potentially dangerous information flows, including information flow through covert scheduling channels. The X10 concurrency mechanisms simplify reasoning about information flow in concurrent programs. We present a static analysis that enforces a noninterference-based extensional information security condition in a calculus that captures the key aspects of X10's place abstraction and async-finish parallelism. We extend this security analysis to support many of X10's language features, and have implemented a prototype compiler for the resulting language.
Description
Other Available Sources
Keywords
Language-based security, information-flow control, X10
Terms of Use
This article is made available under the terms and conditions applicable to Other Posted Material (LAA), as set forth at Terms of Service