Flame logo>

Flow-limited authorization

Software

Flame: Flow-Limited Authorization for Haskell

Flame is a library and plugin for GHC that enforces information security policies in Haskell programs. In Flame, sensitive information is protected by monad-like types that specify how information may flow according to the Flow-Limited Authorization Model. The operations of these Flame monads implement the type system constraints of the Flow-Limited Authorization Calculus (FLAC).

Code and demos

All code for Flame is publically available We have also built some examples.

Research

  1. Applying consensus and replication securely with FLAQR
    A formal language for building application-level consensus and replication protocols that are secure by construction.
    CSF’22   Distinguished paper award
    Mondal, Priyanka and Algehed, Maximilian and Arden, Owen
  2. A Calculus for Flow-Limited Authorization: Expanded Technical Report
    A core programming model that uses flow-limited authorization to provide end-to-end information security to dynamic authorization mechanisms and programs that use them.
    Technical Report   Revised, corrected, and expanded version of CSF’16 paper
    Arden, Owen and Gollamudi, Anitha and Cecchetti, Ethan and Chong, Stephen and Myers, Andrew C
  3. First-Order Logic for Flow-Limited Authorization
    A logic for reasoning about authorization decisions in the presence of information-flow policies.
    CSF’20
    Hirsch, Andrew K. and Azevedo de Amorim, Pedro Henrique and Cecchetti, Ethan and Tate, Ross and Arden, Owen
  4. Information flow control for distributed trusted execution environments
    DFLATE offers high-level security abstractions that reflect both the guarantees and limitations of the TEE security mechanisms.
    CSF’19
    Gollamudi, Anitha and Chong, Stephen and Arden, Owen
  5. Nonmalleable Information Flow Control
    A new 4-safety hyperproperty for secure declassification and endorsement and a type system for enforcing it.
    CCS’17   Best paper finalist (11 finalists out of 151 accepted papers).
    Cecchetti, Ethan and Myers, Andrew C. and Arden, Owen
  6. A Calculus for Flow-Limited Authorization
    A core programming model that uses flow-limited authorization to provide end-to-end information security to dynamic authorization mechanisms and programs that use them.
    CSF’16
    Arden, Owen and Myers, Andrew C.
  7. Flow-Limited Authorization
    CSF’15
    Arden, Owen and Liu, Jed and Myers, Andrew C.