Robust
Composition:
Towards a Unified Approach to Access
Control
and Concurrency Control
by Mark Samuel Miller
A dissertation submitted to Johns Hopkins University in conformity
with the requirements for the degree of Doctor of Philosophy.
Baltimore, Maryland,
May, 2006
Copyright © 2006, Mark Samuel Miller. All rights reserved.
Permission is hereby granted to make and distribute verbatim
copies of this document without royalty or fee. Permission is
granted to quote excerpts from this documented provided the
original source is properly cited.
PDF
of current version (single spaced, formatted for double sided printing.
Some typo fixes and wording improvements)
PDF
of official dissertation (double spaced, formatted for single sided
printing)
Powerpoint
of oral defense talk
PDF
from printing oral defense talk (most animation effects lost)
When separately written programs are composed so that they may cooperate, they may instead destructively interfere in unanticipated ways. These hazards limit the scale and functionality of the software systems we can successfully compose. This dissertation presents a framework for enabling those interactions between components needed for the cooperation we intend, while minimizing the hazards of destructive interference.
Great progress on the composition problem has been made within the object paradigm, chiefly in the context of sequential, single-machine programming among benign components. We show how to extend this success to support robust composition of concurrent and potentially malicious components distributed over potentially malicious machines. We present E, a distributed, persistent, secure programming language, and CapDesk, a virus-safe desktop built in E, as embodiments of the techniques we explain.
Advisor: Jonathan S. Shapiro, Ph.D.
Readers: Scott Smith, Ph.D., Yair Amir, Ph.D.
@PhdThesis{RobustComposition, author = {Mark Samuel Miller}, title = {Robust Composition: Towards a Unified Approach to Access Control and Concurrency Control}, year = {2006}, month = {May}, school = {Johns Hopkins University}, address = {Baltimore, Maryland, USA} }