Functional pearl: Two can keep a secret, if one of them uses Haskell
Artikel i vetenskaplig tidskrift, 2015

For several decades, researchers from different communities have independently focused on protecting confidentiality of data. Two distinct technologies have emerged for such purposes: Mandatory Access Control (MAC) and Information-Flow Control (IFC)—the former belonging to operating systems (OS) research, while the latter to the programming languages community. These approaches restrict how data gets propagated within a system in order to avoid information leaks. In this scenario, Haskell plays a unique privileged role: it is able to protect confidentiality via libraries. This pearl presents a monadic API which statically protects confidentiality even in the presence of advanced features like exceptions, concurrency, and mutable data structures. Additionally, we present a mechanism to safely extend the library with new primitives, where library designers only need to indicate the read and write effects of new operations.

security

library

information-flow control

mandatory access control

Författare

Alejandro Russo

Chalmers, Data- och informationsteknik, Programvaruteknik

ACM SIGPLAN Notices

1523-2867 (ISSN)

Vol. 50 9 280-288

Styrkeområden

Informations- och kommunikationsteknik

Ämneskategorier

Programvaruteknik

Elektroteknik och elektronik

Datavetenskap (datalogi)

Datorsystem

DOI

10.1145/2784731.2784756

Mer information

Senast uppdaterat

2023-08-07