Show simple item record

dc.contributor.authorArden, Owen
dc.date.accessioned2017-04-04T20:27:01Z
dc.date.available2017-04-04T20:27:01Z
dc.date.issued2017-01-30
dc.identifier.otherArden_cornellgrad_0058F_10108
dc.identifier.otherhttp://dissertations.umi.com/cornellgrad:10108
dc.identifier.otherbibid: 9905979
dc.identifier.urihttps://hdl.handle.net/1813/47733
dc.description.abstractEnforcing the confidentiality and integrity of information is critical in distributed applications. Production systems typically use some form of authorization mechanism to protect information, but these mechanisms do not typically provide end-to-end information security guarantees. Information flow control mechanisms provide end-to-end security, but their guarantees break down when trust relationships may change dynamically, a common scenario in production environments. This dissertation presents flow-limited authorization, a new foundation for enforcing information security. Flow-limited authorization is an approach to authorization in that it can be used to reason about whether a principal is permitted to perform an action. It is an approach to information flow control in that it can be used to reason about whether a flow of information is secure. This dissertation presents the theoretical foundation of this approach, the Flow-Limited Authorization Model (FLAM). FLAM uses a novel principal algebra that unifies authority and information flow policies and a logic for making secure authorization and information flow decisions. This logic ensures that such decisions cannot be influenced by attackers or leak confidential information. We embed the FLAM logic in a core programming model, the Flow-Limited Authorization Calculus (FLAC). FLAC programs selectively enable flows of information; the type system ensures that attackers cannot create unauthorized flows. A well-typed FLAC not only ensures proper authorization, but also secure information flow. The FLAC approach to secure programming is instantiated in FLAME, a library and compiler plugin for enforcing flow-limited authorization in Haskell programs. Flame uses type-level constraints and monadic effects to statically enforce flow-limited authorization for Haskell programs in a modular way.
dc.language.isoen_US
dc.rightsAttribution 4.0 International*
dc.rights.urihttps://creativecommons.org/licenses/by/4.0/*
dc.subjectaccess control
dc.subjectauthorization
dc.subjectauthorization logic
dc.subjectinformation flow control
dc.subjectinformation security
dc.subjectComputer science
dc.titleFlow-Limited Authorization
dc.typedissertation or thesis
thesis.degree.disciplineComputer Science
thesis.degree.grantorCornell University
thesis.degree.levelDoctor of Philosophy
thesis.degree.namePh. D., Computer Science
dc.contributor.chairMyers, Andrew C.
dc.contributor.committeeMemberSirer, Emin G.
dc.contributor.committeeMemberMadden, Samuel
dc.contributor.committeeMemberKozen, Dexter Campbell
dc.contributor.committeeMemberSchneider, Fred Barry
dcterms.licensehttps://hdl.handle.net/1813/59810
dc.identifier.doihttps://doi.org/10.7298/X4HX19P9


Files in this item

Thumbnail
Thumbnail

This item appears in the following Collection(s)

Show simple item record

Except where otherwise noted, this item's license is described as Attribution 4.0 International

Statistics