seclib-1.1.0.1: A simple library for static information-flow security in Haskell

Safe HaskellTrustworthy
LanguageHaskell98

SecLib.LowHigh

Contents

Description

Define the two-point standard security lattice that refers to public and secret information.

Synopsis

Security level for public data

data L Source

Security level associated to public information.

Instances

Less L H

Two-point lattice (information can flow from public to secret entities)

Less L L

Two-point lattice (information can flow between public entities)

CanFlowTo L H 
CanFlowTo L L 

Security level for sensitive data

data H Source

Security level associated to secret information.

Instances

Less H H

Two-point lattice (information can flow between secret entities)

Less L H

Two-point lattice (information can flow from public to secret entities)

CanFlowTo H H 
CanFlowTo L H 

Abandoning the Sec monad

public :: Sec L a -> a Source

Only public values can be removed from the Sec monad.