DocumentCode
3035108
Title
A Library for Secure Multi-threaded Information Flow in Haskell
Author
Tsai, Ta-chung ; Russo, Alejandro ; Hughes, John
Author_Institution
Chalmers Univ. of Technol., Goteborg
fYear
2007
fDate
6-8 July 2007
Firstpage
187
Lastpage
202
Abstract
Li and Zdancewic have recently proposed an approach to provide information-flow security via a library rather than producing a new language from the scratch. They have shown how to implement such a library in Haskell by using arrow combinators. However, their approach only works with computations that have no side-effects. In fact, they leave as an open question how their library, and the mechanisms in it, need to be modified to consider these kind of effects. Another absent feature in the library is support for multithreaded programs. Information-flow in multi-threaded programs still remains as a challenge, and no support for that has been implemented yet. It is not surprising, then, that the two main stream compilers that provide information-flow security, Jif and FlowCaml, lack support for multithreading. Following ideas taken from literature, this paper presents an extension to Li and Zdancewic´s library that provides information-flow security in presence of reference manipulation and multithreaded programs. Moreover, an online-shopping case study has been implemented to evaluate the proposed techniques. The case study reveals that exploiting concurrency to leak secrets is feasible and dangerous in practice and how our extension helps avoiding that. To the best of our knowledge, this is the first implemented tool to guarantee information-flow security in concurrent programs and the first implementation of a case study that involves concurrency and information-flow policies.
Keywords
concurrency control; data flow computing; electronic commerce; multi-threading; program compilers; security of data; software libraries; FlowCaml; Haskell library; Jif; arrow combinators; concurrency; concurrent programs; online shopping; secure multi-threaded information flow; stream compilers; Computer languages; Computer science; Computer security; Concurrent computing; Data security; Information security; Java; Libraries; Multithreading; Program processors;
fLanguage
English
Publisher
ieee
Conference_Titel
Computer Security Foundations Symposium, 2007. CSF '07. 20th IEEE
Conference_Location
Venice
ISSN
1940-1434
Print_ISBN
0-7695-2819-8
Type
conf
DOI
10.1109/CSF.2007.6
Filename
4271649
Link To Document