
Departmental Papers (CIS)
Date of this Version
November 2007
Document Type
Journal Article
Recommended Citation
Stephen Tse and Stephan A. Zdancewic, "Run-time Principals in Information-flow Type Systems", . November 2007.
Abstract
Information-flow type systems are a promising approach for enforcing strong end-to-end confidentiality and integrity policies. Such policies, however, are usually specified in terms of static information — data is labeled high or low security at compile time. In practice, the confidentiality of data may depend on information available only while the system is running.
This paper studies language support for run-time principals, a mechanism for specifying security policies that depend on which principals interact with the system. We establish the basic property of noninterference for programs written in such language, and use run-time principals for specifying run-time authority in downgrading mechanisms such as declassification.
In addition to allowing more expressive security policies, run-time principals enable the integration of language-based security mechanisms with other existing approaches such as Java stack inspection and public key infrastructures. We sketch an implementation of run-time principals via public keys such that principal delegation is verified by certificate chains.
Keywords
decentralized label model, dynamic principals, information-flow, noninterference, run-time principals, security-typed, soundness, type systems
Date Posted: 15 January 2008
This document has been peer reviewed.
Comments
Postprint version. Published in ACM Transactions on Programming Languages and Systems, Volume 30, Issue 1, November 2007, 44 pages.
Publisher URL: http://doi.acm.org/10.1145/1290520.1290526