A monadic analysis of information flow security with mutable state

We explore the logical underpinnings of higher-order, security-typed languages with mutable state. Our analysis is based on a logic of information flow derived from lax logic and the monadic metalanguage. Thus, our logic deals with mutation explicitly, with impurity reflected in the types, in contra...

Full description

Saved in:
Bibliographic Details
Published in:Journal of functional programming Vol. 15; no. 2; pp. 249 - 291
Main Authors: CRARY, KARL, KLIGER, ALEKSEY, PFENNING, FRANK
Format: Journal Article
Language:English
Published: Cambridge, UK Cambridge University Press 01.03.2005
Subjects:
ISSN:0956-7968, 1469-7653
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:We explore the logical underpinnings of higher-order, security-typed languages with mutable state. Our analysis is based on a logic of information flow derived from lax logic and the monadic metalanguage. Thus, our logic deals with mutation explicitly, with impurity reflected in the types, in contrast to most higher-order security-typed languages, which deal with mutation implicitly via side-effects. More importantly, we also take a store-oriented view of security, wherein security levels are associated with elements of the mutable store. This view matches closely with the operational semantics of low-level imperative languages where information flow is expressed by operations on the store. An interesting feature of our analysis lies in its treatment of upcalls (low-security computations that include high-security ones), employing an “informativeness” judgment indicating under what circumstances a type carries useful information.
Bibliography:istex:3FE0C9A5C1EC3B02822D0D81AB54C84F6AD1904D
PII:S0956796804005441
ark:/67375/6GQ-T928JNGZ-7
SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 14
ISSN:0956-7968
1469-7653
DOI:10.1017/S0956796804005441